Я пытаюсь установить диапазон, равный currentregion. Код ниже работает, но команда активирования меняет фокус, который я не хочу. Если я удалю активирующую команду excel, произойдет сбой в последней строке. Код ниже приведен в модуле класса и части более крупного суб. Какие-либо предложения?excel vba set range as currentregion
worksheets(SHT).activate 'stops the runtime error but changes sheet
With Worksheets(SHT)
With .Range(TBL2).CurrentRegion
.Cells = Data
End With
End With
Спасибо, первый код работает хорошо и много аккуратнее. fyi массивы будут иметь тот же размер, что и другой код, извлекает данные, манипулирует им, а затем вставляет его обратно в рабочий лист, используя этот суб. – Zeus
Рад, что вы разобрались. Просто запустили несколько быстрых тестов, а ряды (например, * 1 * и * 2 *) для изменения размера находятся в правильном порядке. – Jeeped
К сожалению, все еще есть ошибка. Если курсор находится на вкладке, я хочу скопировать данные (правильный лист активен), код работает. Но если другая вкладка активна, то excel падает? Электронная таблица отлично работала в excel v2010, но я обновил ноутбук и программное обеспечение и теперь запускаю его в v2013. У меня также есть проблемы с пользовательской формой, которая может быть связана. Какие-либо предложения? – Zeus