如果Excel VBA包含一个字母,则删除该行

所以我有一组数据,最后以不同的数字字母结尾

233423528535A 3453453453945 234234235532C 3453453455345 234234238964D 3453453453234 656234234534G 346364634636Z 6456456456452 3453453453242 234234234234X 

我想创build一个vba脚本,如果这一列中的一行包含一个字母,它可以被删除。 我尝试使用Excel函数,但Excel函数不允许删除行。

运行这个简短的子文件,删除列A中包含非数字值的所有行。

 Sub noAlphas() On Error Resume Next With Worksheets("sheet4") .Columns(1).SpecialCells(xlCellTypeConstants, xlTextValues).EntireRow.Delete End With End Sub 

这是我的build议:

  Sub RemLetterRows() Dim DelRow As Range With ThisWorkbook.Sheets("Sheet1").Range("A:A") ' Write your sheetname between "" & column On Error Resume Next Set DelRow = .SpecialCells(xlCellTypeConstants, xlErrors + xlTextValues + xlLogical) DelRow.EntireRow.Delete On Error GoTo 0 End With End Sub 

问候丹尼尔

如果单元格被格式化为文本,请尝试将其转换并根据types不匹配错误进行删除:

Sub noAlphas()错误继续下一步

 For i = 11 To 1 Step -1 j = CLng(Cells(i, 1).Value) If Err.Number = 13 Then Rows(i).EntireRow.Delete Next 

结束小组