То, что я пытаюсь сделать:VBA - удаление строк, основанных на ячейку, содержащую определенные слова + добавление строк на основе значения ячейки
Экспортный первенствовать документ из Salesforce. Я пытаюсь удалить некоторые строки на основе условия, а затем добавить строки на основе другого набора условий. Будучи новым для VBA, я просматривал форумы и искал несколько примеров кода, но не могу заставить их работать полностью.
Добавление строк:
Колонка C = Количество. Необходимо добавить строки ниже в зависимости от значения в столбце C. Если количество = 3 - я хочу добавить 2 пустых строки ниже. Если количество = 4 - 3 пустые строки ниже ...
Пробовал:
Sub BlankLine()
Dim Col As Variant
Dim BlankRows As Long
Dim LastRow As Long
Dim R As Long
Dim StartRow As Long
Col = "C"
StartRow = 15
BlankRows = 1
LastRow = Cells(Rows.Count, Col).End(xlUp).Row
Application.ScreenUpdating = False
With ActiveSheet
For R = LastRow To StartRow + 1 Step -1
If .Cells(R, Col) > 1 Then
.Cells(R + 1, Col).EntireRow.Insert Shift:=xlDown
End If
Next R
End With
Application.ScreenUpdating = True
End Sub
Это работает, но только добавляет одну строку ниже - мне нужно, чтобы добавить строки на основе значения столбца C = 'количество'.
Удаление Ряды:
имен столбцов A = продукта. Если какое-либо имя продукта содержит MAINT или APP, мне нужно удалить эту строку. Пробовал:
Sub test()
With ActiveSheet
.AutoFilterMode = False
With Range("A1", Range("A" & Rows.Count).End(xlUp))
.AutoFilter 1, "*Maint*"
On Error Resume Next
.Offset(1).SpecialCells(12).EntireRow.Delete
End With
.AutoFilterMode = False
End With
End Sub
Это также работает, но удаляет верхний ряд после его завершения, поэтому я теряю некоторую информацию.
Любые предложения о том, как подойти к этому, очень ценятся!
'добавить строки на основе значения столбца C', пожалуйста, объясните. – findwindow
Если, например, C4 имеет количество «4» - я бы хотел добавить 3 пустых строки ниже – bliq
Что относительно C5 ?. – findwindow