在列中查找具有特定值的第一个单元格,然后在上面插入 3 行
Look for first cell with certain value in column, then insert 3 rows above
我每天早上都在处理电子表格,需要在 VBA 宏中自动执行以下操作:
在 AE 列中,查找第一个大于零的值,然后在包含该特定单元格的行上方插入 3 行。
像这样的东西应该适合你:
Sub tgr()
Dim ws As Worksheet
Dim lRow As Long
Set ws = ActiveSheet 'Adjust to be the correct worksheet if necessary
With Intersect(ws.UsedRange, ws.Columns("AE"))
On Error Resume Next
lRow = Evaluate("=MATCH(1,INDEX((ISNUMBER(" & .Address(External:=True) & "))*(" & .Address(External:=True) & ">0),),0)")
On Error GoTo 0
End With
If lRow > 0 Then
ws.Rows(lRow).Resize(3).Insert
Else
MsgBox "No values in column AE found to be greater than 0."
End If
End Sub
我每天早上都在处理电子表格,需要在 VBA 宏中自动执行以下操作:
在 AE 列中,查找第一个大于零的值,然后在包含该特定单元格的行上方插入 3 行。
像这样的东西应该适合你:
Sub tgr()
Dim ws As Worksheet
Dim lRow As Long
Set ws = ActiveSheet 'Adjust to be the correct worksheet if necessary
With Intersect(ws.UsedRange, ws.Columns("AE"))
On Error Resume Next
lRow = Evaluate("=MATCH(1,INDEX((ISNUMBER(" & .Address(External:=True) & "))*(" & .Address(External:=True) & ">0),),0)")
On Error GoTo 0
End With
If lRow > 0 Then
ws.Rows(lRow).Resize(3).Insert
Else
MsgBox "No values in column AE found to be greater than 0."
End If
End Sub