I had a really big problem with both voles and pocket gophers when I moved here. They ate my roses from the tops, usually. I ended up buying traps for each and trapping them. I'd set the traps on their holes and if I didn't catch something in a day, I'd switch types. Or move somewhere else. Over two years I caught more than a dozen voles and about half as many pocket gophers. I systematically dug up and destroyed their underground highways. So far this spring, no sign of either.
Of course having local foxes, coyotes, bobcats and raptors helps a little, too.
It's not a quick fix. It's not a permanent fix. But it's an effective one that does not do bad things to the animals that consume voles and gophers. Good Luck.