Как всегда, достаточно внимательно прочитать документацию.
Guild.voice_channels: List[VoiceChannel]
Т.е. это список, а ты дергаешь у него какие-то посторонние свойства.
Вот у отдельного VoiceChannel и впрямь есть свойство
members: List[Member].
Как дальше, догадаешься?
Что-то вроде
sum(len(vc.members) for vc in member.guild.voice_channels)
Этот подход удобен для инициализации количества участников при запуске бота.
А вот для отслеживания можно не дергать вышеописанное каждый раз, а поступить иначе. Если before.channel is None, то человек вошел в войс-чат. Если after.channel is None, то человек вышел из войс-чата. Если ни тот ни другой, человек просто перешел из одного войс-канала в другой. Тогда хранишь количество юзеров, и делаешь ему +1/-1 согласно этим условиям.