Trying to cancel my contract however kept on hold for ages, then cut off! Trying not to be cynical but this appear to be a common issue where VM make it extremely difficult to leave. The only thing I can do is cancel direct debit and wait for VM to come screaming. I have evidenced the difficulty and made a complaint so I have observed the cancelation period. Can't VM see that this behaviour is losing customers! There should be cancelation option on Web page.
Sorry to hear you've had some issues getting a cancellation request sorted. If it's mobile, as advised above you can request a PAC via your online account - and providing the PAC to a new provider is effectively providing 30 days notice.
Alternatively cancellation can be done by calling 789/ 0345 600 0789 or via text on 0753 301 6422.