В настоящее время я работаю над файлом Excel и добавил VBA. Я добавил кнопку на Лист1 со следующим VBA:Excel 2013 VBA Ошибка выполнения 13 Тип Несоответствие
Sub AddRow()
Dim c, d As Range
Set rng = ActiveSheet.Range("A1:A100")
Set rng2 = Worksheets("Sheet2").Range("A1:A100")
For dblCounter = rng.Cells.Count To 1 Step -1
Set c = rng(dblCounter)
If c.Value Like "XXXXXX" Then
c.EntireRow.Insert
For dblCounter2 = rng2.Cells.Count To 1 Step -1
Set d = rng2(dblCounter2)
If d.Value Like "YYYYYY" Then
d.EntireRow.Insert
End If
Next dblCounter2
End If
Next dblCounter
End Sub
Целью кода является, чтобы добавить новую строку на Лист1 над ячейкой, содержащей «XXXXXX» и новую строку на Sheet2 выше клетку, содержащую «YYYYYY ». Добавлена новая строка в Sheet1. Однако добавление новой строки на Sheet2 не делает. Я получаю ошибку «Ошибка Runtime Error 13 Type Mismatch» в If d.Value Like "YYYYYY" Then
, но нет ошибки в If c.Value Like "XXXXXX" Then
, и я не знаю почему. Заранее спасибо
Посмотрите на ячейку, которая проходит испытания. является ли значение ошибкой? –
Возможно ли, что «ГГГГ» не существует во 2-м листе? –
'd' держит 100 ячеек? Можете ли вы «если» 100 ячеек за раз? – findwindow