Не удалось выполнить метод автозаполнения класса Range при заполнении таблицы

В настоящее время я работаю над проектом в Excel, который берет необработанные данные и помещает их в таблицу. В настоящее время размер таблицы изменяется в зависимости от размера копируемых в нее данных. У меня проблема в том, что большая часть истории заполнена формулами, основанными на данных. Я пытаюсь выполнить автозаполнение формул до конца таблицы на основе размера, определенного по данным, и получаю сообщение об ошибке "Ошибка метода автозаполнения класса диапазона"

ColNo = 26 + ((large - Year(Date)) * 4)
ColLet = Split(Cells(, ColNo).Address, "$")(1)

Sheets(sheetsSA).Range("V3:W4").AutoFill Destination:=Sheets(sheetsSA).Range("V3:W" & semi_end + 1)
 ****Sheets(sheetsSA).Range("X3:Y4").AutoFill Destination:=Sheets(sheetsSA).Range("X3:" & ColLet & semi_end + 1)****

Звездная линия - та, которая дает проблему. Будем очень благодарны любой помощи. Первые две строки находят букву столбца, который используется при автозаполнении. Спасибо

1 ответ

Решение

AutoFill Команда ожидает всю ширину столбца в первой части аргумента диапазона.

Эта строка кода должна работать:

Sheets(sheetsSA).Range("X3:" & ColLet & "4").AutoFill Destination:=Sheets(sheetsSA).Range("X3:" & ColLet & semi_end + 1)

Кроме того, вы будете хорошо искать с "С конца с заявлением"

With Sheets(sheetsSA)
    .Range("V3:W4").AutoFill Destination:=.Range("V3:W" & semi_end + 1)
    .Range("X3:" & ColLet & "4").AutoFill Destination:=.Range("X3:" & ColLet & semi_end + 1)
End With
Другие вопросы по тегам