In newer versions this is a very stubborn issue. Here is how you fix it.
sudo mkdir /etc/vbox/
sudo vi /etc/vbox/networks.conf
put this in:
In our case we can use the slash /16 range of 192.168.0..0, change the subnet according to your needs
* 192.168.0.0/16
service virtualbox restart
now reopen the GUI.
Edit your host-only network, you will find the IP changes back. However, if you close and open Vbox you should see that it did indeed set.
virtualbox, interface, parameter, gateway, ip, newer, versions, networks, conf, sudo, mkdir, etc, vbox, vi, slash, subnet, restart, reopen, gui, edit,