返回列表 上一主題 發帖

可否簡化 VBA 語法

可否簡化 VBA 語法

大家好,我寫一串語法
但自覺得過程太冗長,是否可以簡化程式語法


條件1.在A欄位,只要出現是"空白",就整列移除
條件2.在A欄位,只要出現這些英文,就整列移除 : TPD . TPD-both . TPD-viewing . GSA

Sub Step1()

On Error Resume Next
[A:A].SpecialCells(xlCellTypeBlanks).EntireRow.Delete
On Error GoTo 0
End Sub

Sub Step2()

Dim yy
yy = "TPD"
For I = [a65536].End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Rows(I), yy) > 0 Then Rows(I).Delete
Next I
End Sub

Sub Step3()

Dim yy
yy = "TPD-both"
For I = [a65536].End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Rows(I), yy) > 0 Then Rows(I).Delete
Next I
End Sub

Sub Step4()

Dim yy
yy = "TPD-viewing"
For I = [a65536].End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Rows(I), yy) > 0 Then Rows(I).Delete
Next I
End Sub

Sub Step5()

Dim yy
yy = "GSA"
For I = [a65536].End(xlUp).Row To 1 Step -1
If WorksheetFunction.CountIf(Rows(I), yy) > 0 Then Rows(I).Delete
Next I
End Sub

在麻煩各位先進!
Just do it.

回復 2# ikboy

您好,感謝回覆,但在執行過程中會發生錯誤訊息,如下圖




028-01.zip (11.74 KB)

在麻煩您了!
Just do it.

TOP

回復 3# ML089

ML089
感謝您的提供,測試成功,謝謝您!
Just do it.

TOP

回復 7# ikboy


您好,我有測試過,但仍有一些問題,若A欄是空白的(我要刪除列),但在H欄有資料(我不需要)
經測試後,它(H爛)的資料仍會存在,並不會因為A欄是空白而刪除整列
Just do it.

TOP

回復 3# ML089

您好,我有測試過,但仍有一些問題,若A欄是空白的(我要刪除列),但在H欄有資料(我不需要)
經測試後,它(H爛)的資料仍會存在,並不會因為A欄是空白而刪除整列
Just do it.

TOP

回復 6# 准提部林

您好,我有測試過,但仍有一些問題,若A欄是空白的(我要刪除列),但在H欄有資料(我不需要)
經測試後,它(H爛)的資料仍會存在,並不會因為A欄是空白而刪除整列
Just do it.

TOP

回復 6# 准提部林


Dear ikboy / 准提部林 / ML089

我在H欄有設定資料,但A欄是空白的,若H欄資料是位於最下方時,程式無法刪除該列





028-01.zip (10.39 KB)
Just do it.

TOP

回復 11# ML089


A欄空白時若H欄有資料 不刪除嗎?   --> A欄空白,一律要刪除
Just do it.

TOP

回復 14# 准提部林


Dear 准提部林
測試成功
請問哪一個語法是刪除A欄空白列阿?
Just do it.

TOP

回復 17# 准提部林


   了解,感謝您的回覆!
Just do it.

TOP

        靜思自在 : 有智慧才能分辨善惡邪正;有謙虛才能建立美滿人生。
返回列表 上一主題