これは夏休みの自由研究の一部を記事にしたものです。
データの参照程度ならVBAを使わなくてもゴリゴリすればいろんなやり方で何とかなる事が分かりました。
— パパセンセイ (@10mikiya) 2018年8月17日
旅行中に考えたアイデアがうまくいけば更新系もノンプロでできるはずなんですが・・・。後日試してみます。 pic.twitter.com/gW6EE5v1Ft
こんな感じでクリックするとセルの値が変わります。VBAは使っていません。
いきなりお詫び
タイトルは少し語弊がありました。申し訳ありません。
正確には「セルをクリックしたように見せかけて他のセルの値を変える」です。
また、実際に同様の仕様を実装する場面があるのでしたらVBAで作った方が手軽で自由度も高いです。
VBAが使えない場面ではワンチャンあるかもしれませんがこれを実務で使用するのはあまりお勧めしません。
ネタと思って見ていただければ幸いです。
ネタバレ
見る人が見たらこの下の画像だけで分かります。以降は読まなくても大丈夫です。
解説
オプションボタンをセルの上に重ねているだけですね。
オプションボタンは開発タブから挿入できます。
また、リンクするセル(A15)を指定して、そのセルに書き込まれる数値をもとに条件付き書式で色を付けたり詳細データを引っ張ってきたりしています。
ただそれだけです。
ここで課題なのは1点。
オプションボタンの「◎」は列の非表示で見えなくすることができません。常に画面に表示されてしまいます。
ボタンを隠すにはちょっとしたコツが必要です。
それはウィンドウ枠の固定を使うことです。
ウィンドウ枠の固定は、スクロールをしても指定した行や列を常に表示してくれる機能ですが、見せたくない部分を逆に隠すことができます。
やり方は簡単で、見せたくない列や行を画面外に外してから固定化するだけです。
今回の場合、ボタンが配置されているA列~B列付近を隠したいので、A列とB列が隠れるように横スクロールしてから画面を固定します。
↓イメージ
これでボタンを隠すことができます。左に横スクロールしようとしてもウィンドウ枠の固定が働いてA列とB列だけは表示されません。
ボタンが見えないのでなんとなくセルをクリックしているように見えます。実際はオプションボタンをクリックしているんですね。
勘の鋭い方はもうわかるかもしれませんが、このやり方、表がシートの左端付近にないと使えません。あとC列とD列付近もクリックできてしまします。さらに言えばセルが触りづらいです、コピペが大変です。
ということで
使う場面は少ないですがどこかで活用出来たら幸いです。