Ошибка при работе с переменным контуром.VBA Запуск переменной цикла во время изменения рабочего листа
Электронная таблица работает, вставляя новые данные в следующую пустую строку в столбце от A до H и каждый раз имеет переменное количество строк.
Событие изменения происходит, когда целевая строка в столбце A равна <> 0, и информация экстраполируется из вставленных данных и отображается в столбцах от J до N. Но этот код работает только в верхней строке новых данных. Я считаю, что это требует цикла, но я не уверен, как это сделать?
Я попытался найти хороший пример онлайн, но я изо всех сил стараюсь и терплю неудачу с каждой попыткой. Массивное спасибо любому, кто может мне помочь или указать мне в правильном направлении!
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
On Error GoTo enditall
If Target.Cells.Column = 1 Then
n = Target.row
arange = Range("A" & n)
brange = Range("B" & n)
crange = Range("C" & n)
drange = Range("D" & n)
erange = Range("E" & n)
frange = Range("F" & n)
grange = Range("G" & n)
hrange = Range("H" & n)
Dim myRange As Excel.Range
Dim myCell As Excel.Range
Set myRange = Target
Application.EnableEvents = False
For Each myCell In myRange.Cells
If Excel.Range("A" & n).Value <> "" Then
Excel.Range("J" & n) = DateValue(Left(hrange, 10))
Excel.Range("k" & n) = Left(brange, 3)
Excel.Range("L" & n) = Mid(brange, 5, 2)
Excel.Range("M" & n) = Left(drange, 1)
If Excel.Range("M" & n) = "B" Then Excel.Range("N" & n) = erange
If Excel.Range("M" & n) = "S" Then Excel.Range("N" & n) = erange * -1
End If
Next
End If
enditall:
Application.EnableEvents = True
End Sub
Mate, который работал отлично! Спасибо! – CaptainDanJ