You can use a script event to change the tileset anytime you want. I set my script edit up that way for the very reason you specified: Sometimes a map needs to use more than one tileset. the only problem with vx tilesets, is availability of them.
Since only the original tileset (renamed to Default), the the RMXP one are the only choices right now, I had to otherwise use those in the demo. To add a tileset, simply edit the Defaults module's tilesets_default hash to add a default tileset for a map, make sure that an entry 0 still exists, that is the master default that is used when you go to a map that is not in the hash array. Otherwise, you can have an event change the tileset to any tileset you want at any time you want, my demo demonstrates that, and how to do it.
Tileset filenames are based off of the old Graphics\System\Tileset* names.
I did that to make building tilesets much easier, since Enterbrain already explained the Tileset* files.
the fimenames areas follows:
<name of tileset>A1.png
<name of tileset>A2.png
<name of tileset>A3.png
<name of tileset>A4.png
<name of tileset>A5.png
<name of tileset>B.png
<name of tileset>C.png
<name of tileset>D.png
<name of tileset>E.png
and as for the complaint that it is much harder to work with multiple tilesets in vx, I have plans to write a visual basic tool that copies your tileset into the System directory so that the vx editor can see the tileset you are using, All you have to do, is tell the program what you called the tileset, then reload the map in vx.
you would then see the updated tileset as it would appear in the game.
The tool I speak of is also a good way to check to see if two different tilesets are compatible with tileset swap type events.
To change a tileset on the fly, just simply use a Defaults.tileset_name = "<name of tileset>" event, and to reset the tileset back to the map default, just simply use a Defaults.tileset_reset event.
that same trick works with just about any system graphic, example:
Defaults.windowskin_name = "Foo" #change to Foo windowskin
Defaults.windoskin_reset #reset to default windowskin
Also you can change any of the defaults, even the tileset master default (tilesets_default[0]), so no reason to complain.
Oh, and one more thing, always reset the current tileset back to tileset defaults before entering another map, otherwise you will have the tileset you specified, even on the next map.