作者jaycs ()
看板Office
标题[算表] 使用巨集删除资料栏A为空白的整个资料列
时间Wed May 10 12:10:02 2023
软体:MS Excel
版本:2016
如题,想要删除资料栏 A 为空白的该资料列 (整列都要删除)
资料栏A 的列数不固定
透过网路找到两个巨集
Sub DeleteBlankRows() '可删除整列空的资料列,确实可用
Dim rng As Range
Dim i As Long
Set rng = ActiveSheet.UsedRange
For i = rng.Rows.Count To 1 Step -1
If WorksheetFunction.CountA(rng.Rows(i)) = 0 Then
rng.Rows(i).EntireRow.Delete
End If
Next i
End Sub
Sub DeleteRowsWithBlankCellsInA() '这个还没试,因为它要事先设定范围
'据说特色是执行速度很快
'以下这两句要拼在同一行才是完整指令
Worksheets("Sheet1").Range("A17:A1000").
SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
该如何修改才能达到我的目标:如果资料栏 A 为空白,则删除该资料列(一整列)
谢谢大家!
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 114.35.126.1 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Office/M.1683691804.A.CFA.html
1F:推 cutekid: [a:a].SpecialCells(xlCellTypeBlanks).EntireRow.Delete 05/10 12:36
2F:→ jaycs: 先谢谢c大,顺利执行完,但资料栏A仍有空白列,如图 05/10 14:13
4F:→ jaycs: 经过c大的提示,最後用以下两行程式码解决了问题: 05/10 15:41
5F:→ jaycs: [a:a].AutoFilter Field:=1, Criteria1:="=" 05/10 15:41
6F:→ jaycs: [a:a].SpecialCells(xlCellTypeVisible).EntireRow.Delete 05/10 15:41
7F:→ jaycs: 多谢c大 05/10 15:42