Hello,
Virtual LANs (VLANs) can be viewed as a group of devices on different physical LAN segments which can communicate with each other as if they were all on the same physical LAN segment. The devices in a VLAN still need to be on the same subnet, that is, share the same address space in order to communicate with each other. If you want different VLANs t communicate with each other, you need a Layer 3 routing device (either a router or a Layer 3 capable switch).
To summarize: VLANs allow you to overcome the physical limitation of legacy LANs, you can put users from e.g. different buildings in the same V(LAN).
A subnet is simply an address space that is shared between users on the same (V)LAN.
Here is a good document that explains the details:
VLAN Information
http://net21.ucdavis.edu/newvlan.htm
Regards,
GP