
No.4ベストアンサー
- 回答日時:
CommandButton1~3において。
クラスモジュール名『Class1(追加した際のデフォルト)』に、
Public WithEvents myComBt As MSForms.CommandButton
Private Sub myComBt_click()
With myComBt
If .Caption <> "" Then .BackColor = IIf(.BackColor = vbButtonFace, vbButtonShadow, vbButtonFace)
End With
End Sub
標準モジュールに
Private cb(1 To 3) As New Class1
Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 3 ' 3個なので。
Set cb(i).myComBt = Me.Controls("CommandButton" & i)
Next
End Sub
Private Sub UserForm_Terminate()
Dim i As Integer
For i = 1 To 3
Set cb(i).myComBt = Nothing
Next
End Sub
でも多分求める物に近いのは出来てるかも・・・・
No.6
- 回答日時:
#5です
#4様の回答を見て。。ああ、そういう事でしたか、、
なるほど、、すでに回答されていますが 参考サイトです
https://blog.goo.ne.jp/pc_college/e/9ca2b0c452e9 …
No.5
- 回答日時:
こんばんは
ご質問の内容だけでは、どのようなものをしたいのか分かりませんが
表示した自作カレンダーのコマンドボタンを手動で印をつけるだけであれば
個別で良いと思いますね。例えば
Private Sub CommandButton1_Click()
Call CBtn_BackColor(Me.CommandButton1)
End Sub
Sub CBtn_BackColor(CBtn As Object)
With CBtn
If .BackColor = vbButtonFace Then
.BackColor = RGB(255, 0, 0)
Else
.BackColor = vbButtonFace
End If
End With
End Sub
纏めてやる方法は沢山ありますが、
カレンダーをどのように作成(Initialize)しているかですかね。
例えば、Weekday関数やリストなどを作り設定しているのなら
Initialize時にButton.Caption設定時にBackColorを設定すれば良いだけです
ボタンCaptionが1、2、、、と表示されているのでその位置を特定する
処理にBackColorを追加すると言う事ですね
本格的なカレンダーを作成しているのなら 祝日や休日のパラメータを
シートなどに纏めてClassやFunctionなどで取得すれば良いのかな、、と思います。
取り敢えず、ボタンの色を設定するのは .BackColor です
No.2
- 回答日時:
https://excelappwithvba.web.fc2.com/managing_exc …
こう言う方法もありますけど理解するのが大変かも。
正直VB(.NET)の方がこの場合だけなら楽に思える。
No.1
- 回答日時:
vbaでもコントロール配列チックなものを作ることもできますが、、、
https://excelappwithvba.web.fc2.com/managing_exc …
このあたりを理解して、目的に合わせて改良し実装することを考えると、それぞれに書いたほうが楽かもしれません。
ちな、来年1月は6週ありますw
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Excelマクロのコードができる方に質問します。
Visual Basic(VBA)
-
VBAのコードについて
Visual Basic(VBA)
-
【関数orVBA】カーソルのある行を黄色にし、A列の値を別シートに表示できますか?
Visual Basic(VBA)
-
4
VBA CSV取り込みについて
Visual Basic(VBA)
-
5
超難 日付に対するクロス集計
Visual Basic(VBA)
-
6
連想配列について
Visual Basic(VBA)
-
7
各月の件数を取り出したい
Visual Basic(VBA)
-
8
リストボックスについて
Excel(エクセル)
-
9
このプログラムがわかりません
Visual Basic(VBA)
-
10
Excelでコピーしたセル(テキスト)を保持し続ける方法ってありますか?
Visual Basic(VBA)
-
11
CSVファイルの比較と結果の取得(2次元配列へ)について。
Visual Basic(VBA)
-
12
VBA public変数はどのようなことをしたら解放されますか?
Visual Basic(VBA)
-
13
エクセルでカレンダーマクロの作成について
Visual Basic(VBA)
-
14
VBA 過去のファイル内の同じオブジェクトを一括削除
Visual Basic(VBA)
-
15
Excelマクロ 行の削除
Visual Basic(VBA)
-
16
VBA sum ワークシートChange
Visual Basic(VBA)
-
17
エクセル マクロ なんでだろ・・・・・
Visual Basic(VBA)
-
18
Excelマクロ&VBAでユーザーフォームで3択問題を作ってみました。
Visual Basic(VBA)
-
19
このようなデータが、sheet1〜sheet3まであるとします。 (合計2000行くらい) それを1
Excel(エクセル)
-
20
別々にワークブック保存
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
人気Q&Aランキング
-
4
フォームの再読み込み
-
5
ボタン
-
6
VB.NETでマウスクリックイベン...
-
7
チェックボックスで指定出来る...
-
8
VBA IE通知バーの制御 バー内の...
-
9
CommandButtonのCaptionを変化...
-
10
コマンドボタンやイメージにマ...
-
11
ボタンをマウスで押し続けたと...
-
12
TextBoxでEnterキーを押すと、...
-
13
EXCEL2003 オプションボタン複...
-
14
C#で動的に作ったtextboxを消す。
-
15
Excel VBA Application.caller...
-
16
他フォームのクリックイベント取得
-
17
VBAのボタンの位置が変わって困...
-
18
C#プログラムで、ボタンをショ...
-
19
ダウンロードダイアログをVB...
-
20
VB2010 クリック数カウント
おすすめ情報
公式facebook
公式twitter