Я использую следующий код для создания именованных диапазонов для наборов данных с большим количеством столбцовДобавление проверки ошибок в VBA код, который генерирует именованные диапазоны
Sub Make_Named_Ranges()
Range("A1").Select
ActiveSheet.UsedRange
Dim rCell2 As Range
Dim wb2 As Workbook, ws2 As Worksheet
ActiveSheet.UsedRange.Select
Set ws2 = Selection.Parent
Set wb2 = ws2.Parent
For Each rCell2 In Selection.Cells
If rCell2.Address = "$A$2" Then Exit For
wb2.Names.Add rCell2.Value, "=" & ws2.Cells(2, rCell2.Column).Address
& _":" & ws2.Cells(ActiveSheet.Range("A"& Rows.Count).End(xlUp).Row,rCell2.Column).Address
Next rCell2
End Sub
То, что я хотел бы добавить, это форма проверка ошибок - иногда код встречает заголовок столбца в строке 1, который не является допустимым именем (например, M2 или SP500). Есть ли простой способ заставить его просто пропустить этот столбец и продолжать работу, когда он сталкивается с недопустимым именем?