Обращение к диапазону с использованием переменных (и заполнение)
Я в основном хочу проверить, имеют ли два столбца одинаковое количество заполненных строк, и если нет, то я бы хотел скопировать или заполнить последнее значение в более коротком столбце, пока столбцы не станут одинаковой длины.
Вот некоторые из моих попыток:
LastP_iceRef
является более коротким столбцом (если они имеют разную длину) и LastWriterRow
длиннее двух столбцов (где они отличаются - LastP_iceRef
а также LastWriterRow
может быть таким же, но я думаю, что у меня есть код, чтобы позаботиться об этом.
J
это столбец, который LastP_iceRef
происходит от. Я мог бы запутать эту колонку J
и переменная J
Я использовал для чего-то еще.
Это не работает
Range("J" & (lastP_iceRef + 1) & " : J" & LastWriterRow) = Sheets("Sorted data").Cells("J" & lastP_iceRef)`
и ни один из них не делает:
Range(cells(lastP_iceRef + 1) ,"J" ),cells(LastWriterRow,"J") = Sheets("Sorted data").Cells("J" & lastP_iceRef)`
Плохо ли использовать буквы в качестве имен переменных? Я часто так для i=1 до x и т. Д., Но это немного смущает меня с точки зрения меток столбцов Excel.
1 ответ
Попробуйте этот код:
For i = lastP_iceRef + 1 To LastWriterRow
Cells(i, 10).Value = Sheets("Sorted data").Cells(i-1, 10).Value
Next i
Спасибо! Это работает.