Я столкнулся с той же проблемой, когда использовал макрос для создания по сути того же сценария, который вы отметили. После часа или двух отладок я придумал следующее:
Краткий ответ означает, что у вас уже есть объект с именем rpt_name . Поскольку у вас не может быть двух объектов с одинаковым именем, Excel вызывает ошибку.
Длинный ответ Я получил это из справочной функции VBA: «Если предпринята попытка установить для свойства Name имя, уже используемое другим объектом ListObject, выдается ошибка времени выполнения».
Более длинный ответ для меня моя ошибка заключалась в том, что я создавал новую таблицу каждый раз, когда запускал свой макрос, и макрос пытался использовать одно и то же имя для новой таблицы. Конечно, в первый раз, когда я запустил макрос, он работал, потому что у него не было повторяющегося имени, но последующие запуски приводили к сбою из-за дублированного имени (в моем случае имя таблицы)
Самый длинный ответ на данный момент, я предполагаю, что вы, возможно, ввели то же самое rpt_name в своем окне сообщения (третья строка вашего сценария?), Что привело к ошибке. Возможно, вам придется сравнить то, что было введено в окно сообщения, со списком существующих имен, прежде чем продолжить работу со своим сценарием ...