Некоторое время я пытался решить следующую проблему: первый код (здесь не указан) отбрасывает данные в листе EDD в столбце B (точнее, B45), затем каждая ячейка в столбце A заполняется номером 1 (от A45 до внизу столбца B) - как показано в приведенном ниже коде.

Теперь проблема в том, что я добавлю еще один набор данных в столбец B (в конец того, что уже было добавлено), но на этот раз эти новые данные будут иметь номер 2 в каждой ячейке столбца A (ps. Я не могу перезаписать номер 1, который я уже ввел) - проблема в том, что данные динамические. Я не знаю, как определить последнюю строку в столбце A (заполнил ее значением = 2 и автоматически заполнил ее до конца этих новых данных в столбце B).

Dim EDDx As Worksheet
Dim lastrow As Long
Set EDDx = Sheets("EDD")
lastrow = EDDx.Cells(Rows.Count, "C").End(xlUp).Row
With EDDx
.Range("B45:B" & lastrow).Value = 1
End With
End Sub

Спасибо

2
West Ray 23 Окт 2018 в 15:18

2 ответа

Лучший ответ

Пытаться,

with workSheets("EDD")
    .range(.cells(.rows.count, "B").end(xlup), _
           .cells(.rows.count, "C").end(xlup).offset(0, -1)).filldown
end with
1
user4039065user4039065 23 Окт 2018 в 12:37

Пытаться:

Option Explicit

Sub Test()

Dim LastrowC As Long
Dim LastrowB As Long

With wsTest

    LastrowB = .Range("B" & Rows.Count).End(xlUp).Row
    LastrowC = .Range("C" & Rows.Count).End(xlUp).Row

    .Range("B" & Lastrow + 1 & ":C" & LastrowC).Value = "2"

End With


End Sub
1
Error 1004 23 Окт 2018 в 12:42
52948911