Код написан неправильно. Почему-то if rolename in member.roles:
вынесен за цикл. Переменная rolename
так же переопределена, хотя она является параметром, а именно - той ролью, которую нужно исключить. Это вообще непонятно зачем сделано rolename = discord.utils.get(ctx.guild.roles)
и зачем это в цикле. Просто условно 10 раз назначить одну и ту же переменную одинаковую, получив какой-то элемент из списка ролей? Ну и при условии выпадения блока из цикла, всегда выбирается последний человек, независимо от его роли. А там роль может быть выше бота, так же последним человеком может быть и владелец сервера.