excel在某些情况下删除行

如果在G列中有一个以210开头的数字,我怎样才能删除Excel表格的整行。

我不想删除行,如果单元格内有210的地方,但只有当它开始。

使用此代码:

Sub RemoveRows() Dim i As Long i = 1 Do While i <= ThisWorkbook.ActiveSheet.Range("G1").CurrentRegion.Rows.Count If Left(ThisWorkbook.ActiveSheet.Range("G" & i).Formula, 3) = "210" Then ThisWorkbook.ActiveSheet.Cells(i, 1).EntireRow.Delete Else i = i + 1 End If Loop End Sub 

示例文件: https : //www.dropbox.com/s/yp2cwphhhdn3l98/RemoweRows210.xlsm

要看到它并运行,请按ALTF11 ,打开Module 1并按F 5键。 祝你好运!

如果你想在没有代码的情况下做,而是纯粹的在UI中,这就是你可以非常有效地做到这一点:

  1. 插入一个临时列(例如G列的右侧)( Ctrl + 空格在列H的任何单元格中, Ctrl + – )
  2. 使用公式=LEFT(TEXT(G1),3)="210"填充列 – 对于所有要查找的行,这将返回TRUE
  3. 将自动筛选应用于新列或全部范围( CtrlShiftL
  4. 将该列过滤为TRUE – 这样,只有您想要删除的行保留
  5. select所有行并删除(表中任何单元格中的CtrlAShiftSpaceCtrl-
  6. 删除临时列( Ctrl -H列中的任何单元格中的空格Ctrl-

完成!