Does the network you're on use inter-vlan routing? If not, this attack won't work, because often networks that implement multiple vlans also use vtp (vlan trunking protocol) and if you're not on the same vtp domain, and there isn't any inter-vlan routing, then you will be dealing with two completely different networks (your vlan and the target vlan). Ettercap won't be able to do all of this on its own, you will have to have access to the network infrastructure (switches, routers, etc).
A physical alternative would be to connect the target and yourself to a hub, then into whatever switch they are plugged into. If you're in a cisco environment beware of port-security as that will cause a whole slew of other obstacles.