VocExcel(単語帳) / VBA Tips
 
 [Key] エクセル / Excel / VBA /マクロ


<--- 戻る

抽出結果を別シートに表示する

サンプルファイル

抽出結果を別のシートに表示する例です。データ数が多くなるとこちらの方が便利です。

複数のシートでフィルタオプションを実行するときは、注意が必要です。

下の例のように、「単語帳」シートにデータ、「抽出結果」シートに抽出結果を表示させるようにするときは、かならず、結果を表示するシートを一度選択してからフィルタを実行する必要があります。

Sheets("抽出結果").Select '抽出結果を表示するシートを選択しておく。


この作業をしないと、エラーになります。


[1枚のシートと2枚のシートでの、フィルタオプションのコードの違い]
1枚のシート ⇒ xlFilterInPlace  ・・・同一シート上にフィルタを実行
2枚のシート ⇒ xlFilterCopy    ・・・抽出データを別シートにコピー





Private Sub CommandButton1_Click()

----- 一部省略

'####  検索を実行


Sheets("抽出結果").Select '抽出結果を表示するシートを選択しておく必要がある。



Cells.Select '前回の抽出結果を消しておく
Selection.Clear
Range("A2").Select



Sheets("単語帳").Range("B9:D19").AdvancedFilter Action:=xlFilterCopy, _ ’別シートにコピーする

CriteriaRange:=Sheets("単語帳").Range("C3:C4"), _  ’検索条件の範囲
CopyToRange:=Sheets("抽出結果").Range("A1"), _  ’検索結果を表示させる場所
Unique:=False




End Sub
--