2012年1月25日 星期三
VBA-將所有沒有內容的儲存格中的『空白』刪除
Rem <summary>
Rem 將所有沒有內容的儲存格中的『空白』刪除
Rem <param name="tcSheetName">Sheet名稱</param>
Rem <returns>True:通過檢查,False:未通過檢查</returns>
Function clearCellBlank(tcSheetName As String) As Boolean
'取得指定Sheet己使用的區域
Dim myRange As Range
Set myRange = Worksheets(tcSheetName).UsedRange
'刪除曾經有被使用過的區域中只有『空白』的儲存格
Dim lnI As Integer
Dim lnJ As Integer
Dim lnStartRow As Integer
Dim lnStartColumn As Integer
Dim lnRowCount As Integer
Dim lnColumnCount As Integer
lnStartRow = myRange.Row '曾經有被使用過的區域的第一列
lnStartColumn = myRange.Column '曾經有被使用過的區域的第一欄
lnRowCount = myRange.Rows.Count '曾經有被使用過的區域的列數量
lnColumnCount = myRange.Columns.Count '曾經有被使用過的區域的行數量
For lnI = 0 To lnRowCount - 1
For lnJ = 0 To lnColumnCount - 1
'如果儲存格為空白,則將空白去除,改為Null
If (Trim(Worksheets(tcSheetName).Cells(lnStartRow + lnI, lnStartColumn + lnJ)) = "") And _
(Not IsNull(Worksheets(tcSheetName).Cells(lnStartRow + lnI, lnStartColumn + lnJ))) Then
Worksheets(tcSheetName).Cells(lnStartRow + lnI, lnStartColumn + lnJ) = Null
End If
Next lnJ
Next lnI
End Function