執筆:EugeneAmnis
条件で図形を変える
以前、紹介した条件付き書式は図形や写真には対応していません。 ある数値になったら図形を変えたかったり、ユーザーの操作で図形を変えたい場合には別の方法が必要です。 今回はこの方法を紹介します。まず完成の形を見てください。
スピンボタンで画像の参照を変えています。マクロは使用していません。Excelの標準機能でできます。今回は Excel 2011 for Mac をメインに 操作パネルが違う部分は Excel 2013 を交えて紹介して行きます。
本来であれば、保証期間の過ぎた Excel 2011 for Mac を使用すべきではありませんが、Excel 2016 for Mac は操作のスピードにムラがあり (あくまでも筆者の環境で)使いづらい為、Excel 2011 for Mac を使用しています。一応、Excel 2016 for Mac でも動作はします。但し、遅いです。
手順
主な手順は以下の通りです。
- 図形入りのリストを作成する。(この時、図形をセル内に納めてください。)
- 図形の入ったセルをコピーし、表示箇所に図(またはリンクした図)として貼り付ける。
- 参照先を変える仕組みを作る。(今回はスピンボタン)
- 名前の定義で図形を変える為の名前を追加する。
- 2. の図形を選択し、数式入力バーに 4. の名前を入力する。
- 完成
手順1
以下の図のようなリストを作成します。リストのフォーマットはどのようなものでも構いませんが、図形を必ずセル内に納めてください。 (納めなくてもできますが、作業が頻雑になります。)
手順2
どのセルでも構わないので、図形の入ったセルをコピーする。
表示する位置に図としてペーストする。
Windows と Excel 2016 for Mac はリンクされた図としてペーストする。(一応、図でもできます。)
手順3
図のようにスピンボタンを設置し、各設定を以下のようにします。
現在値:図形入りリストの最初の行番号(今回は3)
最小値:現在値と同様
最大値:図形入りリストの最後の行番号(今回は7)
変化の増分:1
リンクするセル:任意(今回はD3)
次に、図の参照用のセルを作成します。任意のセルに以下の数式を入力します。
= "シート名!列アルファベット" & スピンボタンのリンクセル(D3)
今回
="reference!C" & D3
手順4
次に名前の定義をします。Mac では 挿入 > 名前 > 定義
Windows では 数式 > 名前の定義
名前の定義ダイアログに以下のように入力し,追加します。
名前:任意の名前(今回はFIGURE)
参照範囲:INDIRECT関数
=INDIRECT(手順3の参照用のセル)
INDIRECT関数は文字列で入力された参照セルの内容を戻します。
手順5
手順2のペーストした図を選択して、数式入力バーに手順4で定義した名前を入力する。
= 定義した名前(今回はFIGURE)
手順6
完成
図を変える仕組みとしては、リンクされた図のリンクされた先が変更するので切り替わるということだと思います。 図に直接、関数が使用できない為に定義した名前で迂回策を取っているのでしょう。 深く考察することでこんなこともできるんだと考えさせられました。参考サイトはこちらです。
今回は図を変える仕組みにスピンボタンを使いましたが、入力書式のリストやIF関数を使っても同じようにできます。
Excel for Mac では、写真や図関連の VBA はほぼ使用できないので今回紹介したものを使えば、迂回作としても利用できます。