マクロの使用方法教えてください。
◇-?マクロの使用方法教えてください。-オンプ(2005/09/10-09:08)No.290947 ┣?!Re:マクロの使用方法教えてくだ...-白茶(2005/09/10-11:34)No.290962 ┗?!Re:マクロの使用方法教えてくだ...-まっくろ(2005/09/10-13:52)No.290995 ┗?!?Re:マクロの使用方法教えてくだ...-オンプ(2005/09/10-22:17)No.291127 ┗?!?!Re:マクロの使用方法教えてく...-まっくろ(2005/09/12-00:11)No.291441 ┗?!?!!Re:マクロの使用方法教えてく...-オンプ(2005/09/12-07:10)No.291470
▲このページのトップに戻る
▲このページのトップに戻る
▲このページのトップに戻る
▲このページのトップに戻る
▲このページのトップに戻る
▲このページのトップに戻る
290947 | マクロの使用方法教えてください。 | オンプ | 2005/09/10-09:08 |
メーカー名:自作PC ショップオリジナル OS名:WindowsXp Professional パソコン名:? -- 題名がバグっていたので再度投稿させて頂きます。 エクセルのコントロールツールボックスからチェックマークをよく使っているのですが、 例えば、 明・大・昭 の様に、チェックマークを付けるのではなく、文字に○を付けたいのです。 チェックマークの様に、明治・大正・昭和 のいずれかにマウスをクリックするだけで ○印がつけれる方法はありますか? |
▲このページのトップに戻る
290962 | Re:マクロの使用方法教えてください。 | 白茶 | 2005/09/10-11:34 |
記事番号290947へのコメント オンプさんは No.290947「マクロの使用方法教えてください。」で書きました。 こんにちは。 ※最初にお断り 私はVBAは詳しくありません。 ワークシート上の「明・大・昭」のそれぞれをクリックすれば、 該当の文字が○で囲まれるようにしたい訳ですよね。 考え方としては、オートシェイプで「塗りつぶしなし」の○を3個作って、 それぞれの文字の上に重ね、 該当する○をクリックしたら、他の2つの○が非表示になる仕掛け というのが、割と簡単ではないかと思います。 と、言いつつ、私も自分では書けないので、 「マクロの記録」で 「楕円1」をクリックした時に、 「楕円1」の線を「自動」に、 「楕円2」「楕円3」の線を「線なし」に という操作を、記録させてみました。 Sub 楕円1_Click() ActiveSheet.Unprotect ActiveSheet.Shapes.Range("Oval 1").Select Selection.ShapeRange.Fill.Visible = msoFalse Selection.ShapeRange.Fill.Transparency = 0# Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.DashStyle = msoLineSolid Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Line.Transparency = 0# Selection.ShapeRange.Line.Visible = msoTrue Selection.ShapeRange.Line.ForeColor.SchemeColor = 64 Selection.ShapeRange.Line.BackColor.RGB = RGB(255, 255, 255) ActiveSheet.Shapes.Range(Array("Oval 2", "Oval 3")).Select Selection.ShapeRange.Fill.Visible = msoFalse Selection.ShapeRange.Fill.Transparency = 0# Selection.ShapeRange.Line.Weight = 0.75 Selection.ShapeRange.Line.DashStyle = msoLineSolid Selection.ShapeRange.Line.Style = msoLineSingle Selection.ShapeRange.Line.Transparency = 0# Selection.ShapeRange.Line.Visible = msoFalse ActiveSheet.Protect DrawingObjects:=True, Contents:=False, Scenarios:= _ False End Sub 「楕円2」「楕円3」についても同様に組み、 「シートの保護」でオブジェクトのみ保護対象にしてみました。 もっとスマートな方法があるのかも知れませんが、 なにぶん、VBAは殆んど使った事が有りません故、 「意見の1つ」としてご参考下さい。 |
▲このページのトップに戻る
290995 | Re:マクロの使用方法教えてください。 | まっくろ | 2005/09/10-13:52 |
記事番号290947へのコメント 大きめのフォントを使って”○”をキャプションにしたラベルを3つ用意 それぞれのコントロール名を、MARU_MEIJI、MARU_TAISYOU、MARU_SHOUWAにして MARU_SHOUWA以外のVisibleプロパティーをFALSEにする。 小さめのフォントを使って”明治””大正””昭和”をキャプションに したラベルを3つ用意してそれぞれのコントロール名を、MEIJI、TAISYOU、 SHOUWAにする。 ”明治””大正””昭和”を最前面側に移動して、”○”と重ねあわす。 クリックイベントハンドラを次のようにする。 Private Sub MEIJI_Click() MARU_MEIJI.Visible = TRUE MARU_TAISYOU.Visible = FALSE MARU_SHOUWA.Visible = FALSE End Sub Private Sub TAISYOU_Click() MARU_MEIJI.Visible = FALSE MARU_TAISYOU.Visible = TRUE MARU_SHOUWA.Visible = FALSE End Sub Private Sub SYOUWA_Click() MARU_MEIJI.Visible = FALSE MARU_TAISYOU.Visible = FALSE MARU_SHOUWA.Visible = TRUE End Sub |
▲このページのトップに戻る
291127 | Re:マクロの使用方法教えてください。 | オンプ | 2005/09/10-22:17 |
記事番号290995へのコメント みなさん、どうも詳しくご説明頂きありがとうございました。 まっくろさんに質問なんですが、初心者ですので 出来ればもう少しわかりやすく説明して頂けないでしょうか? ご面倒とは思いますが、よろしくお願いします。 |
▲このページのトップに戻る
291441 | Re:マクロの使用方法教えてください。 | まっくろ | 2005/09/12-00:11 |
記事番号291127へのコメント (1) ○を表示するラベルを3つ作る コントロールツールボックスからラベルを選択して適当に配置。 ラベルを右クリックで、プロパティーを表示。 プロパティーからCaptionを探して、内容を○に変える。 プロパティーからFontを探して、フォントサイズを大きめに変える。 プロパティーから(オブジェクト名)を探して、それをMARU_MEIJIに変える プロパティーからVisibleを探して、それをFalseに変える 上と同じ操作をあと2回繰り返す ただし、(オブジェクト名)は、MARU_TAISYOU, MARU_SYOUWA また、オブジェクト名をMARU_SYOUWAにしたものだけ、 VisibleはTrueにしておく (2) 明治、大正、昭和を表示するラベルを作る。 コントロールツールボックスからラベルを選択して適当に配置。 ラベルを右クリックで、プロパティーを表示。 プロパティーからCaptionを探して、内容を明治に変える。 プロパティーから(オブジェクト名)を探して、それをMEIJIに変える プロパティーからBackStyleを探して、それをfmBackStyleTransparentに変える 上と同じ操作をあと2回繰り返す ただし、(オブジェクト名)は、TAISYOU, SYOUWA (3) ラベルを重ねあわす (1)で作ったMARU_MEIJIと(2)で作ったMEIJIを重ねあわす。 つまり、丸の中に明治と表示されるようにする。 同じことをMARU_TAISYOUとTAISYOU、MARU_SYOUWAとSYOUWA を重ねあわす。 (4) クリックイベントハンドラを追加 明治をダブルクリックすると、 Private Sub MEIJI_Click() End Sub と表示される。これを下記の通りに書き換えて、Visual Basicの画面を閉じ、 デザインモードを終了で出来上がり。 Private Sub MEIJI_Click() MARU_MEIJI.Visible = True MARU_TAISYOU.Visible = False MARU_SHOUWA.Visible = False End Sub Private Sub TAISYOU_Click() MARU_MEIJI.Visible = False MARU_TAISYOU.Visible = True MARU_SHOUWA.Visible = False End Sub Private Sub SYOUWA_Click() MARU_MEIJI.Visible = False MARU_TAISYOU.Visible = False MARU_SHOUWA.Visible = True End Sub |
▲このページのトップに戻る
291470 | Re:マクロの使用方法教えてください。 | オンプ | 2005/09/12-07:10 |
記事番号291441へのコメント まっくろさんは No.291441「Re:マクロの使用方法教えてください。」で書きました。 どうもありがとうございました。 早速試してみたいと思います。 |
何か一言(本ページで参考になったならないを含めて残してあります)
◎:解決 ○:参考になった ×:参考にならなかった !:アドバイスあり
参考 | 回数 | 投稿日時 | 何か一言 |
---|