自分のためのVBA オートシェイプをクリックし、色とテキストをMsgBoxで表示 条件分岐

 こんにちは。

 VBAを使うことが、頻繁ではないですが、ちょくちょくあり、

 その都度「コードってこれで良かったっけ?」「どう書くんだっけ?」

 となることが、しばしば、、、あります。

 その時その時で調べて、確認して、コードを書いてとしていたので、

 自分が使いやすいように、コードをコピペで使えるようにまとめます。

 

内容

 オートシェイプをボタンとして使うことがしばしばあり、

 クリック時のオートシェイプの情報を取得するコードをまとめておきます。

 また、取得した情報をもとに条件分岐させ処理を行うコードもまとめておきます。

 

コード

 オートシェイプをクリックした際に、以下を実施するコードです。

  ① オートシェイプの色コードを取得し、MsgBoxで表示する。

  ② オートシェイプに書き込まれたテキストを、MsgBoxで表示する。

 

 

尚、準備したエクセル上の画面はこのようにしました。

 色と書かれた列に記載しているオートシェイプをクリックすると、subShapeClick が呼ばれるように、

 設定をしておきます。

 

コードを実行

 コードを実行してみます。実行するには、オートシェイプをクリックするだけです。

 マクロを登録したオートシェイプにマウスを持っていくと、

 マウスのポインタが、指差しマークになります。

 この状態で、マウスをクリックすると、

 となりMsgBoxで色のコードが表示されます。続けて、

 オートシェイプに記述したテキストがMsgBoxで表示されます。

コード2

 オートシェイプをクリックすると、オートシェイプの情報を取得できたので、

 取得した情報をもとに条件分岐させるコードを示します。 

 

 

コード2を実行

  例えば、赤色のオートシェイプをクリックして実行すると、

 コードに記載された通り、MsgBoxでメッセージが表示されます。その後、

 赤色だったEEEのオートシェイプの色が変わりました。

 いろいろ使えそうでしたので、まとめておきました。

コメントを残す

メールアドレスが公開されることはありません。