我想知道如何在具有“订单类型”(如下指定)的指定行上方插入 3 行额外的行。
该行在工作表中多次出现。下面的代码可以工作,只是它会在指定行下方插入行。谢谢
Sub try()
Dim c As Range
For Each c In Range("A1:A100")
If c.Value Like "*Order Type*" Then
c.Offset(3, 0).EntireRow.Insert
End If
Next c
End Sub
如果您的问题是在搜索条件之上添加 3 行,那么解决您的问题应该很容易:
在你的代码行中:
c.Offset(3, 0).EntireRow.Insert
你的行说,当找到订单类型时,他应该转到下面 3 行并插入额外的行。
应该这样:
c.EntireRow.Resize(3).Insert
我的行说,当找到订单类型时,在其上方添加 3 行。
希望这就是您所寻找的。
Edited:
我在网上搜索了一下,发现了与您的问题类似的内容,并根据您的需要进行了更改。希望这对你有用。
很少解释它是如何工作的:它会一直搜索 A 列,如果“订单类型“发现它在上面添加了 3 行。当宏转到空白单元格时,它会停止。尝试一下并告诉我它是否适合您。
Sub AddRows()
Dim lastValue As String, i As Long, r As Long
Do
r = r + 1
If r > 1 And Cells(r, 1).Value Like "*Order Type*" Then
If Cells(r, 1).Value = "" Then Exit Do
For i = 1 To 3
Rows(r).Insert Shift:=xlUp
Next
r = r + 3
Else
If IsEmpty(Cells(r, 1)) = True Then
Exit Do
Else
End If
End If
lastValue = Cells(r, 1).Value
Loop
End Sub
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)