返回列表 上一主題 發帖

可否簡化 VBA 語法

  1. Sub ex()
  2.     For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
  3.         For Each x In Array("", "TPD", "TPD-both", "TPD-viewing", "GSA")
  4.             If Cells(i, 1) = x Then Cells(i, 1).EntireRow.Delete
  5.         Next
  6.     Next
  7. End Sub
複製代碼
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

本帖最後由 ML089 於 2017-2-8 16:03 編輯

回復 9# jsc0518


A欄空白時若H欄有資料 不刪除嗎?

Sub ex()
    For i = Cells(Rows.Count, 1).End(xlUp).Row To 1 Step -1
        For Each x In Array("", "TPD", "TPD-both", "TPD-viewing", "GSA")
            If Cells(i, 1) = "" And Cells(i, "H") <> "" Then Exit For
            If Cells(i, 1) = x Then Cells(i, 1).EntireRow.Delete
        Next
    Next
End Sub
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

本帖最後由 ML089 於 2017-2-9 14:30 編輯

回復 13# jsc0518

最後一列 Range([A1], ActiveSheet.UsedRange).Rows.Count 參考14樓

Sub ex()
    For i = Range([A1], ActiveSheet.UsedRange).Rows.Count To 1 Step -1
        For Each x In Array("", "TPD", "TPD-both", "TPD-viewing", "GSA")
            If Cells(i, 1) = x Then Cells(i, 1).EntireRow.Delete
        Next
    Next
End Sub
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式

TOP

        靜思自在 : 為自己找藉口的人永遠不會進步。
返回列表 上一主題