Excel VBA 質問スレッド №2019 (解決済)

UserForm_initializeでEnabled = Falseチェックボックスの判定してグレーアウトさせたい

投稿者 : けろ     投稿日時 : 2024/10/07(Mon) 10:03:21     OS : Windows 10     EXCEL : Excel 2016
顧客名簿UserFormを作っています。

UserFormへ入力したデータはエクセルシートに転記されます。(ここは完成)
シートのactivecell行からUserFormを立ち上げると修正もせきます。(ここも完成)シートとUserFormで往復ができるところまではできました。


  A列     B列       C列   D列以降項目続くが省略・・・・・・
 使用不可  取引先名    フリガナ
1  ×    ABC商事㈱   エービーシーショウジ
2      ㈱あいうえお  アイウエオ
3 
4
5
6
以下つづく




という感じでできておりますが、A列の使用不可のところに何かしらのチェックマークデータ(今は×が出るようになっています)がついていたら、UserFormを立ち上げた初期状態でオブジェクト名「使用不可CB」を判定して、チェックが入っていたら、指定したTextBoxすべてEnabled = Falseにしたいです。オブジェクト名「使用不可CB」自体は、activecell行のA列を反映できております。

使用不可にチェックが入っていたら、もうその会社は使えません、使わないでください、といった意味になります。
UserFormを立ち上げたときにグレーアウトするのでわかりやすくなるのではと思い、そうしています。

当たり前ですが、

Private Sub UserForm_Initialize()
   userForm1.取引先名.Enabled = False
   userForm1.フリガナ.Enabled = False
End Sub

にすると、チェックボックスの有無問わずグレーアウトします。

ですので、

Private Sub UserForm_Initialize()
If userForm.使用不可CB.Value = True Then
   userForm.取引先名.Enabled = False
   userForm.フリガナ.Enabled = False
   Else
   userForm.取引先名.Enabled = True
   userForm.フリガナ.Enabled = True
End If
End Sub

にしてみたら、まったくチェックを判定していないのか、グレーアウト(編集不可)にならないです。

記述がおかしいでしょうか。

スポンサーリンク
[返信 1] Re : UserForm_initializeでEnabled = Falseチェックボックスの判定してグレーアウトさせたい
投稿者 : さんこう     投稿日時 : 2024/10/07(Mon) 11:35:18
>A列の使用不可のところに何かしらのチェックマークデータ(今は×が出るようになっています)がついていたら、
>UserFormを立ち上げた初期状態でオブジェクト名「使用不可CB」を判定して


「UserFormを立ち上げた初期状態」では、「オブジェクト名「使用不可CB」」も初期状態でしょうから、判定しても無駄です。


シートからユーザーフォームへデータを読み込むところで処理するとよろしいかと思います。

[返信 2] Re : UserForm_initializeでEnabled = Falseチェックボックスの判定してグレーアウトさせたい
投稿者 : けろ     投稿日時 : 2024/10/07(Mon) 16:15:45
さんこう様のアドバイス通りにしたら、解決いたしました!
ありがとうございました。

当掲示板について
  • Excel VBA に関する掲示板です。Excel VBA に関する質問や疑問、それに対する解決方法など気軽に投稿してください。
  • 記事内ではHTMLのタグは使用できません。
  • 記事は一度投稿すると修正できません。内容を訂正したい場合は返信で対応してください。
  • Sub〜End Sub、Function〜End Function は自動的にプログラムコードとみなし、枠で囲って見やすくします。
  • Excel VBA とは関係ないことや、他人が不快に思うようなことなど、管理人が適当でないと判断した記事は削除する場合があります。
スポンサーリンク
返信入力フォーム
お 名 前  :
内  容   :

ステータス  :

認証コード  : キャプチャ画像 




( 処理日時 : 2025-07-05 17:22:54 )
タイトルとURLをコピーしました