2014年5月28日 星期三

[Excel Macro 巨集] 清除含有特定字眼的儲存格

因工作需要,小莎被要求把 Excel 檔案裡面,含有某字眼的儲存格內容全部清除,因為不能只拿掉某字眼,所以不能用全部取代來達成任務,面對數萬筆的資料,一個一個拿會暈倒,這時候就只能用下面這個 Macro 來達陣囉!

在儲存格 F1 F100000 S1 S100000 的範圍,清除含有 1234 的所有儲存格內容
-------------------------------
1.          Sub Remove_PII()
2.          Dim myRange As Range
3.          Dim myCell As Range
4.          Set myRange = Range("F1:F100000,S1:S100000")
5.          For Each myCell In myRange
6.          If myCell Like "*1234*" Or _
7.          myCell Like "*otherword*" Then
8.          myCell.ClearContents
9.          End If
10.      Next myCell
11.      End Sub
-------------------------------

第四行 Range("F1:F100000,S1:S100000") 裡的 F1:F100000,S1:S100000 是需要處理的資料範圍,通常小莎會設一個比較大的範圍,畢竟每次的資料量不太相同,可不想有漏網之魚,不過相對的,範圍越大,Macro 需要執行的時間越久,可以自己衡量一下資料量最多通常多少,再加上一點點的緩衝;此外,若只想檢查某一些儲存格,也可以用逗號將範圍分開,就不用大面積檢查所有儲存格,花費太多時間。

第六行If myCell Like "*1234*" Or 裡的 1234 就是你想要辨認的某字眼。

沒有留言: