個人實測整理分享,本文都是以選擇range對象為例,實際應用可以直接進行其它操作。比如批量刪除空白單元格所有行,把空白單元格統一設置值為0,清除指定區域上的公式、文本、數值等。
ActiveSheet.usedrange.Select '選擇活動工作表已使用區域 '包括隱藏區域
ActiveSheet.usedrange.SpecialCells (12).select '選擇活動工作表已使用區域,不包括隱藏區域
Rows(ActiveSheet.usedrange.Row).Select '選擇已使用區域第一行,包括隱藏區域
Columns(ActiveSheet.usedrange.Column).Select '選擇已使用區域第一列,包括隱藏區域
Cells(ActiveSheet.usedrange.Row, ActiveSheet.usedrange.Column).Select '已使用區域第一個單元格 包括隱藏區域
ActiveSheet.usedrange.SpecialCells(11).Select '選擇活動工作表上可見的已使用區域最後一個單元格,不包含隱藏單元格
Cells(ActiveSheet.usedrange.Rows.Count + ActiveSheet.usedrange.Row - 1, ActiveSheet.usedrange.Columns.Count + ActiveSheet.usedrange.Column - 1).Select
'已使用區域最後一個單元格,包括隱藏區域。
Cells(ActiveSheet.usedrange.Rows.Count + ActiveSheet.usedrange.Row - 1, ActiveSheet.usedrange.Columns.Count + ActiveSheet.usedrange.Column - 1).EntireRow.Select
'已使用區域最後一行整行,包括隱藏行
Cells(ActiveSheet.usedrange.Rows.Count + ActiveSheet.usedrange.Row - 1, ActiveSheet.usedrange.Columns.Count + ActiveSheet.usedrange.Column - 1).EntireColumn.Select
'已使用區域最後一行整列,包括隱藏列
ActiveSheet.usedrange.ColumnDifferences(Comparison:=ActiveSheet.Range("B6")).select
'選擇活動工作表上已使用區域內所有和單元格B6內容不一樣的單元格
Cells.SpecialCells(xlCellTypeFormulas, 23).Select '選擇當前工作表上所有含有公式的單元格,23是4個類型的數值總和,代表所有,省略也是所有
Cells.SpecialCells(xlCellTypeFormulas, 2).Select '選擇公式結果值返回為文本的所有單元格
Cells.SpecialCells(xlCellTypeFormulas, 1).Select '選擇公式結果值返回為數值的所有單元格
Cells.SpecialCells(xlCellTypeFormulas, 4).Select '選擇公式結果值返回為邏輯值的所有單元格
Cells.SpecialCells(xlCellTypeFormulas, 16).Select '選擇公式結果值返回為錯誤值的所有單元格
ActiveSheet.cells.SpecialCells(2).Select '選擇活動工作表上所有含有常量的單元格,包括數字,不包括公司得到的數值,和下面這行代碼是一樣的,只是一個使用參數一個使用對應的值
ActiveSheet.cells.SpecialCells(xlTextValues).Select '選擇活動工作表上所有文本單元格,包括數字,不包括公司得到的數值
'這一行直接省略了前面的TYPE,幫助文檔寫著是必選的,但實際可以省略,可能省略也有默認值
Range("E7:E16").SpecialCells(xlCellTypeBlanks).Select '選擇指定區域E7:E16上的空白單元格
ActiveSheet.usedrange.SpecialCells(xlCellTypeBlanks).Select '選擇活動工作表上已使用區域所有空白單元格
ActiveSheet.cells.SpecialCells(xlCellTypeConstants, 1).Select '選擇活動工作表上所有數值單元格,
更多請參考後面的參數說明:
'表達式.SpecialCells(Type, Value)
Type 參數
xlCellTypeAllFormatConditions: 任意格式單元格 對應值:-4172 '這個格式是指什麼,我還沒弄清楚,設置了單元格格式,比如單元格背景色,字體,邊框等都顯示找不到
'xlCellTypeAllValidation: 含有驗證條件的單元格 對應值:-4174 '設置了數據有效性驗證的單元格,菜單欄》數據有效性裡設置的
'xlCellTypeBlanks: 空單元格 對應值: 4 '指定區域的空白單元格
'xlCellTypeComments: 含有注釋的單元格 對應值: -4144 '含有注釋的單元格
'xlCellTypeConstants: 含有常量的單元格 對應值:2 ,'這個後面可以使用Value參數指定哪幾類單元格
'xlCellTypeFormulas: 含有公式的單元格 對應值: -4123 '這個後面可以使用Value參數指定哪幾類單元格
'xlCellTypeLastCell: 已用區域中的最後一個單元格 對應值:11 '僅對可見區域有效
'xlCellTypeSameFormatConditions: 含有相同格式的單元格 對應值:-4173 '還沒弄清楚這個格式指的是什麼
'xlCellTypeSameValidation: 含有相同驗證條件的單元格 對應值:-4175 '兩個以上相同驗證條件的單元格
'xlCellTypeVisible: 所有可見單元格 對應值: 12 是已經使用的可見單元格區域,
Value參數
只對前面是XlSpecialCellsValue 常量 和xlCellTypeFormulas常量有效。可選下面參數,可寫前面英文,也可以直接寫後面的數字,可把數值相加的值表示多個參數。
xlErrors (錯誤) 對應值: 16
xlLogical (邏輯) 對應值: 4
xlNumbers (數值) 對應值: 1
xlTextValues (文本) 對應值: 2