2022-08-08のブログ「Excel/選択したセルの行や列に色を付ける」の宿題で、ドロップダウンリストで適用するか/否か が出来るか...
試行したワークシート
- ファイル名:田布施町COVID-19発生件数.xlsm(マクロ有効シート)
- シート名:データ
- 構成:
- 1~5行目まで「行固定」してある。
- 当初はA~E列までであったが、年代別入力のため F~R列を追加した。
- B列とF列、C列とQ列は重複しているが、これはグラフを作り易くするため。
切り替えボタン(ドロップダウンリスト)の作成
EXCEL屋さんのサイトを参考に、選択したセルの行や列に 色を付ける/付けない のドロップダウンリストを作成した。
- シート名:設定
- 名前は任意なれど、後から変更するとおかしくなるかも...
- 今回は拡張性を考慮し、独立したシートを新規作成した。
- やってみたかっただけ...
- シートが1枚であれば、そのシートの空いているセルを使えばよい。
- ドロップダウンリストの設定
- セルB1 を選択する。
- データ タブ/データツール グループの[データの入力規制]をクリックする。
- 設定 タブで、
- 入力値の種類:「リスト」とし、
- 元の値: "ON,OFF" を入力した。
- チェックは右図のとおりとし、
- [OK]
- 完成状態
- セルA1 は任意
- セルA1 は任意
VBEの設定
VBEの設定:8/8 のブログで設定したままで
- ThisWorkbook のコード
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Application.ScreenUpdating = True
End Sub
ワークシートの条件付き書式
8/8 のブログではセルを範囲していしたが、拡張性を考慮し「列の範囲指定」で設定した。
- 書式設定する範囲(A~R列)を選択する。
- ホーム・タブ/スタイル・グループの[条件付き書式]⇒ 新しいルール をクリックする。
- 前回の条件付き書式が残っていると二重登録になるので、古い方を削除する必要がある。
- 他に条件付き書式を設定しているケースもあるので、削除は慎重に...
- ▶数式を使用して、書式設定するセルを決定 を選択し、
- [書式(E)...]をクリックする。
- 塗りつぶし・タブを選択し、
- 塗りつぶす色を選択する。
- [OK]をクリックする。
- 次の数式を満たす場合に値を書式設定 欄に下記を入力(コピペ)した。
=AND(設定!$B$1="ON",OR(CELL("ROW")=ROW(),CELL("COL")=COLUMN()))
- 前回は
OR(CELL("ROW")=ROW(),CELL("COL")=COLUMN()))
だった。 - 今回は、設定シートのセルB1が "ON" で‥‥ を追加した。
- ON でなければ何もしない‥‥ ことになるようだ。
- 前回は
- [OK]で閉じる。
- 動作を確認する。
設定 シートのドロップダウンリストを変え、- 「ON」にすると、色が付く。
- 「OFF」または削除すると、色が付かない。