Выберите последнюю непустую ячейку в столбце A -> Заполните пустые ячейки ниже в столбце A на основе последней непустой ячейки в столбце C -> Повторите

excel #vba #datatable #cell

#excel #vba #datatable #ячейка

Вопрос:

Я хотел бы заполнить последнее непустое значение ячейки в столбце A в Excel. Заполнение должно прекратиться, как только оно достигнет количества для последней непустой ячейки в столбце C. Вот пример:

img1

Это должно выглядеть так:

изображение 2

Хотелось бы повторить это для последней непустой ячейки;

изображение 3

Это самое близкое, что я получил к тому, что я ищу, но я не хочу каждый раз выбирать A2. Я хотел бы каждый раз выбирать последнюю непустую ячейку в столбце A.

 Dim lrowc As Integer

lrowc = SavedData.Cells(Rows.Count, "C").End(xlUp).Row
    SavedData.Range("A2:A" amp; lrowc).FillDown
 

Комментарии:

1. Скриншоты кода здесь не разрешены, поэтому я откатил вопрос до версии, в которой код был текстовым.

Ответ №1:

Похоже, это тот же принцип, который вы используете для столбца C — найдите последнюю использованную ячейку в A, а затем используйте FillDown :

 Sub x()

Dim lrowc As Long, n As Long

With SavedData 'assume defined somewhere
    n = .Cells(Rows.Count, "A").End(xlUp).Row 'last filled cell in A
    lrowc = .Cells(Rows.Count, "C").End(xlUp).Row 'last filled cell in C
    .Range("A" amp; n amp; ":A" amp; lrowc).FillDown
End With

End Sub
 

Комментарии:

1. Потрясающе, спасибо! Это работает отлично.