|
こんにちわ。もう見てへんかな?
VBAだけで解決しようとするから難しいんですわ。
こういうやつは一般機能も活用した複合技を使えばええんです。
↓考えてみました。
1.A列のデータは3行目以降に連続して入力する。
2.C2:H2の各セルにtokyo23〜saitamaの各文字列(ローマ字です)を入力して、
さらに文字の色を白にして見えなくする。
3.C2:H2の各セル内に収まるようにチェックボックスを6個配置する。
(チェックボックスの表示は都内〜埼玉(漢字です)にしておく)
4.各チェックボックスの書式設定画面(コントロールの書式設定)を開き、
リンクするセルに当該チェックボックスの真上のセルを設定する。
(C2にあるtokyo23のチェックボックスならC1を指定)
5.B3に
=OFFSET($B$1,0,MATCH(A3,$C$2:$H$2,FALSE))
という数式を入力して、下までコピーする。
6.標準モジュールに下記コードを書く。
Sub test()
Range(Cells(2, 2), Cells(Rows.Count, 2).End(xlUp)).AutoFilter Field:=1, _
Criteria1:="TRUE", _
VisibleDropDown:=False
End Sub
7.すべてのチェックボックスに上記マクロを登録する。
これで、チェックボックスをクリックすれば、チェックの入った項目のみ抽出されます。
わかりやすいように改行してるけど、実際は中身がたった1行のマクロが1個だけでええってことやね。
1行目やB列が目障りやったら、非表示にするか文字を白くしてみておくれやす。
試してみてな。
ほな。
|
|