Я использую приведенный ниже код несколько раз в одном сабвуфере для разных значений, а не только "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