Я использую приведенный ниже код несколько раз в одном сабвуфере для разных значений, а не только "CPNEC". Он отлично работает там, где в электронной таблице есть диапазон с этим значением, но он падает, если значение не существует. Это процедура, которую я хочу использовать каждый месяц, когда в моих данных иногда не будет определенного значения, поэтому мне нужно, чтобы оно могло перейти к следующему значению без падения. Кто-нибудь может мне помочь.
Sub SelectCPNEC()
    ' Figure out where the "CPNEC" data starts.
    For nRow = 1 To 65536
    If Range("A" & nRow).Value = "CPNEC" Then
    nStart = nRow
    Exit For
    End If
    Next nRow
    ' Figure out where the "CPNEC" data ends.
    For nRow = nStart To 65536
    If Range("a" & nRow).Value <> "CPNEC" Then
    nEnd = nRow
    Exit For
    End If
    Next nRow
    nEnd = nEnd - 1
    'Select the range required
    Range("A" & nStart & ":G" & nEnd).Select
    'Now copy and paste into the right worksheet
    Selection.Copy
    Application.Goto ActiveWorkbook.Sheets("CPNEC").Cells(1, 1)
    ActiveSheet.Paste
End Sub
