コンボボックスとオートフィルタの連動
データの件数が増えてきたので、コンボボックスで選択した項目を一発で表示させるマクロを組みたいと思います。
前提は以下の通りです。
Webからの受け売りというか、書かれていた通りにやってみたのですが動作しません。どこが間違っているのでしょうか。
また、他にも方法があるようでしたらお知恵をお貸し下さい。
+++
マクロを実行させたいシートにはA3からK3までの項目があります。
そのうち、B3の項目でフィルタをかけたいです。
1.マクロを実行するシートとは別に「マスター」というシートを作成。
そこにコンボボックスにリンクさせる項目を入力。(A3:A16)
セルC1にINDEX関数を置き、(A3:A16)のそれぞれの値を文字に変換。
2.その変換した文字を変数に格納
3.もし、空白を選択してしまったら、マクロから抜ける
4.オートフィルタのセットは、既にセットされていたら一旦解除し再度セット。
5.変数に格納した文字をキーにして、オートフィルタで抽出する。
+++
Sub Combo_AutoFilter()
Application.ScreenUpdating = False
'変数宣言
Dim 選択項目 As Variant
Dim 実行シート名 As Variant
'現在のシート名の格納
実行シート名 = ActiveSheet.Name
'選択項目の格納
Sheets("マスター").Select
選択項目 = Cells(1, 3)
If 選択項目 = Empty Then
Sheets(実行シート名).Select
Exit Sub
End If
'オートフィルタのセット
Sheets(実行シート名).Select
If ActiveSheet.AutoFilterMode = True Then
Selection.AutoFilter
Range("A3:K3").Select
Selection.AutoFilter
Else
Range("A3:K3").Select
Selection.AutoFilter
End If
'オートフィルターで選択
Selection.AutoFilter Field:=2, Criteria1:=選択項目
Range("A3").Select
End Sub
+++
お礼
上記観点で試してみて、その通りでした。 2P側のSATGE、BGMが選ばれました。 回答ありがとうございました。