IT技術サポート総合サイト
 
 言語:  VC++/MFC   PHP/Perl   VB/VBA   ASP/ASP.net   HTML/CSS   基本知識:  Windows   Linux   ネットワーク   MySQL   レンタルサーバ   SEO対策
キーワード: RSS2.0配信
 
 
コラム集:Excel VBA Tips
←前コラム    目次    次コラム→    
 
セルの参照-SpecialCellsメソッド
分類:VB/VBA     著者:徳永秀雄     更新日付:2008/12/14
 
 
概要]
メソッドの引数に指定した条件に一致するセルだけを把握することができます。

[書式]
SpecialCells(Type, Value)
属性: メソッド
所属オブジェクト: Range
操作対象オブジェクト: Range

★引数 Typeについて
xlCellTypeNotes コメントが含まれているセル 
xlCellTypeConstants 定数が含まれているセル 
xlCellTypeFormulas 数式が含まれているセル 
xlCellTypeBlanks 空の文字列 
xlCellTypeLastCell 使われたセル範囲内の最後のセル 
xlCellTypeVisible すべての可視セル 


★引数 Valueについて
xlErrors 
xlLogical 
xlNumbers 
xlTextValues 
xlAllFormatConditions 
xlSameFormatConditions 

「Value」は、「Type」に定数「xlCellTypeConstants」 または「xlCellTypeFormulas」を設定した時に使用すると、特定の種類の定数や数式を含むセルを把握することができます。
また、複数の値を加算して指定すると、複数の種類の定数や数式を指定できます。「Value」を省略すると、すべての定数または数式が対象になります。

[例]
'A1〜C5の中の空白のセルを"0"に設定
Range("A1:C5"). SpecialCells(xlCellTypeBlanks) = "0"

'数式のあるセルの内エラーとなっているセルを選択する
'A1〜E10の範囲で、エラー値が表示されたセルが選択されます
Range("A1:E10").SpecialCells(xlCellTypeFormulas, xlErrors).Select 

'シート内での使用範囲の最後のセルを選択する
'UsedRangeの右端下端のセル
Range("A1:E10").SpecialCells(xlCellTypeLastCell).Select

'指定されたセルと同じ条件付書式を設定済みのセルを選択する 
'シート内で、A1セルと同じ条件付書式を設定したセルが選択される
Range("A1").SpecialCells(xlCellTypeSameFormatConditions).Select 

'指定されたセルと同じ入力規制を設定済みのセルを選択する
'シート内で、A1セルと同じ入力規制を設定したセルが選択される
Range("A1").SpecialCells(xlCellTypeSameValidation).Select 

'定数(数値)が含まれているセルを選択する
'A1〜E10の範囲で、式以外の数値が入力済みのセルが選択されます。
Range("A1:E10").SpecialCells(xlCellTypeConstants, xlNumbers).Select

'定数(文字)が含まれているセルを選択する
'A1〜E10の範囲で、式以外の文字が入力済みのセルが選択されます。
'数値でも文字列として入力されたものも含まれます。
Range("A1:E10").SpecialCells(xlCellTypeConstants, xlTextValues).Select  

'オートフィルタの抽出結果を別シートに貼り付ける 
'(可視セルをコピーする) 
ActiveSheet.Range("A1").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy
With Worksheets("Sheet1").Range("A1")
    'Sheet1 シートの A1 を基点として貼り付ける
    .PasteSpecial
    '貼り付けた範囲の列幅を整える
    .CurrentRegion.Columns.AutoFit
End With
 
 
←前コラム    目次    次コラム→