#vba
Вопрос:
Для каждой ячейки в диапазоне A4:A103, содержащей «ASE», мне нужно, чтобы строка (на самом деле диапазон H:K) сдвигалась вниз столько раз, сколько «ASE: появляется в столбце A.
Проблема в том, что если «ASE» отображается как в последовательном, он смещается вниз каждый раз, когда появляется ASE, и мне нужно будет уменьшать время появления ASE: ASE, ASE, ASE > ASE, ASE, ASE, пустой, пустой, пустой.
Как сейчас, он возвращается: ASE, пустой, ASE, пустой, ASE, пустой …и т. Д.
Sub t_set()
Dim r As Range
Dim a As Variant
For Each r In Range("A4:A103")
If r.Value Like "ASE" Then
Debug.Print True
a = Split(r.Value, "ASE")
r.Offset(1, 0).Resize(UBound(a)).EntireRow.Insert Shift:=xlDown
For i = LBound(a) To UBound(a)
r.Offset(i, 0).Value = a(i)
Next i
End If
Next r
End Sub
Комментарии:
1. Если у вас есть код, то включение его в свой пост и точное объяснение того, что происходит не так при его запуске, поможет вам получить ответы (и поможет предотвратить закрытие вашего вопроса).