Мне нужно написать универсальный макрос, чтобы считать условно столбцы в разных таблицах.
Проблема в том, что каждая таблица может содержать различное количество столбцов.
Поэтому, если требуемые столбцы не существуют, появляется ошибка.
В этом случае я хотел бы применить обработчик ошибок, который будет писать в столбце «null».
Я пытаюсь код ниже, он работает, ошибка не появляется, и макрос продолжаетсядля запуска, но ячейки в столбцах остаются пустыми, без «ноль» В чем проблема?Может быть, есть более оптимальный способ управлять этим?
Function Section800_error()
Dim zelle As Range
Dim i As Integer
Dim posMonitoring As Integer
Dim j As Integer
Dim intLastRow As Integer
On Error GoTo Handler
With Sheets("ICS Table")
Set zelle = .Cells.Find("800_Section", lookat:=xlPart)
posMonitoring = zelle.Column
intLastRow = .UsedRange.Rows.Count
For i = 2 To intLastRow
If .Cells(i, posMonitoring).Value < 1 Or .Cells(i, posMonitoring).Value > 10 Then
Sheets("Section_errors").Cells(i, 8) = "err700"
Else
Sheets("Section_errors").Cells(i, 8) = "no"
End If
Next i
End With
Exit Function
Handler:
For i = 2 To intLastRow
Sheets("Section_errors").Cells(i, 8).Value = "null"
Next i
End Function