Автозаполнение Excel VBA на основе динамического диапазона - PullRequest
0 голосов
/ 13 декабря 2018

Пожалуйста, вы можете помочь с ниже;У меня растет список сотрудников, перечисленных в A1, и я хочу, чтобы мои формулы в E1, F1, G1 и т. Д. Были заполнены автоматически, а не статичны, как сейчас.ошибка: метод 'Range' объекта '_Global' завершился неудачей

Мой код VBA;

Sub AutoFill()

    Dim RowCount As Variant

    RowCount = Range(("A1"), Range("A1").End(xlDown)).Rows.Count
    Range("E1").Select ' Default formula's in E1
    Selection.AutoFill Destination:=Range(RowCount - 1), Type:=xlFillDefault

End Sub

Чего мне не хватает, я в тупике и был со вчерашнего дня ...

Заранее спасибо.

1 Ответ

0 голосов
/ 13 декабря 2018

Метод Range.FillDown * Метод 1002 * может быть проще для кодирования.

Sub DynAutoFill()

    Dim lastRow As long

    lastRow = cells(rows.count, "A").end(xlup).row  'should -1 be added here?
    Range(cells(1, "E"), cells(lastRow, "E")).filldown

End Sub

FillDown может легко обрабатывать несколько столбцов.

Sub DynAutoFill()

    Dim lastRow As long

    lastRow = cells(rows.count, "A").end(xlup).row  'should -1 be added here?
    Range(cells(1, "E"), cells(lastRow, "G")).filldown

End Sub

Ваши собственные потребности кодавесь диапазон в качестве пункта назначения.

Sub DynAutoFill()

    Dim RowCount As Variant

    RowCount = Range(("A1"), Range("A1").End(xlDown)).Rows.Count
    Range("E1").AutoFill Destination:=Range(cells(1, "E", cells(RowCount - 1, "E")), Type:=xlFillDefault

End Sub

Я бы не использовал зарезервированное слово для имени подпроцедуры.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...