こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

締切り済みの質問

WORD VBA オートシェイプにマクロを登録したい

オートシェイプ(四角)をクリックする度に
塗りつぶしの色が白→黒→白というように変わるように
したいのですが。(チェックボックス代わりに使いたい)
EXCELのオートシェイプには「マクロを登録する」と
いう項目がありますが、WORDにはありません。
何かの方法でマクロを登録したいのですが
方法はありますか。
よろしくお願い致します。

投稿日時 - 2006-10-05 14:52:27

QNo.2452639

すぐに回答ほしいです

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

こんにちは。

enunokokoro さんが、ヒントとして与えていだいていたのですが、具体的に、もう一度、ここで展開します。

>オートシェイプでなく別の方法で対応してみては。

コントロールツールのラベルが最適かと思いました。

1. オートシェイプ(四角)→ラベル(大きさは自由)
2. クリックして、塗りつぶしの色が白→黒→白というように変わる。

コントロールツールバーを出して、ラベル(Aという文字をクリック)を引き出し、適当な大きさに貼り付けます。青い三角定規がオンになっているのを確かめて、ダブルクリックします。

そうすると、画面が変わります。

プロシージャ名のラベルの名前に中身のコードも、合わせてくださいね。
Label2 だったら、Label1.BackColor →Label2.BackColor (Label2)になります。

Private Sub Label1_Click()
 If Label1.BackColor = wdColorWhite Then
   Label1.BackColor = wdColorBlack
 Else
   Label1.BackColor = wdColorWhite
 End If
End Sub

このままですと、ラベルの中に文字が残っていますので、ラベルが選択された状態でしたら、左下の表のプロパティの Caption というところに、Label1 と入っていますから、それを削除してください。

もちろん、ここCaptionに文字を入れれば、ラベルの中に文字も反映されます。表のドキュメントからでも、コントロールツールバーの青い三角定規がオンされた状態でしたら、

右クリック-ラベル・オブジェクトの編集(O) で、中身を書き換えることも出来ます。

最初、なれないとちょっと面倒かもしれませんが、コツを掴めばそんなに難しくありません。試してみてください。

投稿日時 - 2006-10-06 13:07:55

ANo.1

マクロについて勉強不足で的確な回答は出来ませんが、
オートシェイプをExcelのようにボタン登録は出来ない
と思いますよ。

オートシェイプでなく別の方法で対応してみては。
http://oshiete1.goo.ne.jp/kotaeru.php3?q=2395821

こちら↑で幾つかの方法が提示されていますから、好み
のものを使ってみてはいかがでしょうか。

投稿日時 - 2006-10-05 17:28:18

あなたにオススメの質問