Я пытаюсь пройти через таблицу в excel. Первые три столбца этой таблицы имеют текстовые заголовки, остальные имеют даты в виде заголовков. Я хочу назначить эти даты, последовательно переменной Date-type, а затем выполнить некоторые операции на основе даты
Для этого я использую цикл foreach на myTable.ListColumns. Поскольку первые три столбца не имеют заголовков дат, я попытался установить цикл таким образом, чтобы, если есть ошибка при назначении строки заголовка переменной типа даты, цикл переходит прямо к следующему столбцу
Это похоже на первый столбец. Однако, когда заголовок второго столбца "назначен" переменной типа даты, макрос обнаруживает ошибку, даже если он находится в блоке обработки ошибок
Dim myCol As ListColumn
For Each myCol In myTable.ListColumns
On Error GoTo NextCol
Dim myDate As Date
myDate = CDate(myCol.Name)
On Error GoTo 0
'MORE CODE HERE
NextCol:
On Error GoTo 0
Next myCol
Чтобы повторить, ошибка возникает во втором раунде цикла, в заявлении
myDate = CDate(myCol.Name)
Может ли кто-нибудь объяснить, почему оператор On Error перестает работать?