我有一个电子表格,当我为该行开具发票时,在 A 列中放置一个 Y。我希望在月底删除 A 列中所有带有 Y 的行,然后将所有行上移,这样电子表格中就没有空行。我有 26 个单独的电子表格,每个月底都需要这样做,最快的方法是什么?
答案1
您需要此 VBA(宏)来删除工作表中 A 列中包含 Y 的所有行。
Option Explicit
Sub DeleteRows()
Dim ws As Worksheet
Dim lr As Long
Dim i As Long
Application.ScreenUpdating = False
For Each ws In Worksheets
lr = ws.Range("A" & Rows.Count).End(xlUp).Row
For i = lr To 1 Step -1
If ws.Range("A" & i) = "Y" Then
ws.Range("A" & i).EntireRow.Delete
End If
Next i
Next ws
Application.ScreenUpdating = True
MsgBox "Rows Deleted"
End Sub
注意:
- 将此代码复制并粘贴为标准模块。
- 搜索字符串“Y”可以删除可编辑工作表上的行。