入力されたかどうか、オプションボタンが選択されたかどうかをチェックして、OKなら次の入力にすすむとゆうプログラムを作りたいのですが、今回の場合、optAとoptBとoptCとがあり選択されたらcmbAとcmbBの入力(選択)を許可するとゆうプログラムを作りたいのです。簡単に
If optA.Value = False And optB.Value = False And・・・
とゆうやり方はあると思うのですが、数が増えたときのためにもっと効率よくしたいのです。ネットには、
ユーザフォーム上に配置された各コントロールの入力チェックを行う段階でオプションボタンの値を効率的にチェックするには、フレームコントロール配下のControlsプロパティーから取得されるコレクションから各オプションボタンを取得し、Valueプロパティーを評価します。
'====================================================================
(For Each ループのネストによる手法)
※他のコントロールの評価も同時に行うことを想定しています
'フレーム数とTrueであったオプションボタンの個数とを比較
'OKが表示されない場合は未選択のオプショングループあり。
'=====================================================================
また、フレームの数分だけのループを指定して入力チェックを行う場合は・・・
======================================================================
(Controlsコレクションのインデックスからフレーム内のコントロールにアクセスする手法)
と書いてあったのですが、初心者なものでよくわかりませんでした。この方法を詳しく解説もしくわ、他によい方法があればよろしくお願いします。
No.1ベストアンサー
- 回答日時:
起動時に(最初)オプションボタンは全て未選択状態に初期化されているとしています。
下は例ですが、For Each で TypeName を使いオプションボタンを特定すれば、何個あってもいいはずです。
調べるきっかけはコマンドボタンにしてみました。ご参考に。
Private Sub Command1_Click()
Dim myCtrl As Control 'コントロール
Dim ChkFlg As Boolean 'オプションボタンを押してあるか
'オプションボタンを調べる
For Each myCtrl In Controls
If TypeName(myCtrl) = "OptionButton" Then
If myCtrl.Value Then
ChkFlg = True
End If
End If
Next
'調べた結果
If ChkFlg Then
cmbA.Enabled = True
cmbB.Enabled = True
End If
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA 参照先で選んだファイルをコピーし、出力先に別名で保存したい 8 2022/05/13 20:37
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- Access(アクセス) チェックボックスにチェックが入った後の挙動 1 2022/08/21 12:39
- JavaScript javaScriptで画面に値を入れるには 1 2022/08/14 12:27
- その他(Microsoft Office) EXCELでバーコードを作成すると白くなってコードが見えません 1 2022/04/04 14:24
- モニター・ディスプレイ windows10 モニタに表示されなくなった 2 2023/08/04 16:58
- JavaScript Javascriptが機能せず原因が分からないので教えて頂きたいです 3 2023/06/04 14:50
- Excel(エクセル) EXCEL ActiveX コマンドボタンで実行する前にいったんmsgBoxで確認を求めたい 1 2022/07/06 19:41
- Visual Basic(VBA) 列と行の名前(重複あり)が交差するセルに、データを入力したい 2 2022/06/25 22:42
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
このQ&Aを見た人はこんなQ&Aも見ています
-
外出時に「待たせる妻」vs イライラする「待つ夫」は日本だけ?見習いたい海外事情
夫の家事参加に積極的なイメージのある海外でも、同様の事例はあるのか。結婚カウンセラーの佐竹悦子さんに伺ってみた。
-
エクセルVBA オプションボタンのチェックを外したい
Excel(エクセル)
-
エクセルVBA テキストボックスに3桁ごとにコンマ
Visual Basic(VBA)
-
エクセルVBAで5行目からオートフィルタモードに設定したいたい
Excel(エクセル)
-
-
4
エクセルVBAでOptionButtonのオンオフ取得
Excel(エクセル)
-
5
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
6
ACCESSでコントロールソースの変更
Access(アクセス)
-
7
特定のセルがアクティブになったときのイベント?
Excel(エクセル)
-
8
Excel ラジオボタンのリセットを作りたい
Excel(エクセル)
-
9
ExcelVBAでテキストボックスの表示形式を小数点第二位まで表示する方法
Visual Basic(VBA)
-
10
EXCEL VBAのユーザーフォームに引数を渡す方法について
Excel(エクセル)
-
11
YES/NO型の値
Excel(エクセル)
-
12
リストボックスの列幅をドラッグで変更したい
Access(アクセス)
-
13
vba listviewにおけるtextのAlingmentを中央にしたい
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
フォームの再読み込み
-
セルをマクロのボタンにしたい。
-
VBAのボタンの位置が変わって困...
-
VBA CommandButtonの文字ずれ
-
回数のカウント
-
CommandButtonのCaptionを変化...
-
コマンドボタンやイメージにマ...
-
ボタンにセットフォーカスする...
-
バックスペース機能の作り方
-
閉じると「+」になり開くと「-...
-
VBAでオプションボタンによって...
-
VBA IE ダウンロード ダイアロ...
-
C♯初心者で、四則演算の電卓を...
-
エクセル 検索マクロ オート...
-
Vba 電卓 一文字消すボタン
-
Access VBA でデータペーストを...
-
コントロールの背景色を
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBA シートのボタン名を変更し...
-
VBA(エクセル)で自動的にボタン...
-
ユーザーフォームに別シートか...
-
VBA CommandButtonの文字ずれ
-
フォームの再読み込み
-
セルをマクロのボタンにしたい。
-
Excel VBA Application.caller...
-
コマンドボタンやイメージにマ...
-
プロシージャからイベントをコ...
-
Access VBA でデータペーストを...
-
VBAのボタンの位置が変わって困...
-
閉じると「+」になり開くと「-...
-
[Excel VBA]コマンドボタンの入...
-
ASP.Net ラベルの内容をすぐに...
-
Excel マクロ 閉じるボタン
-
ボタン
-
CommandButtonのCaptionを変化...
-
VB.NETでマウスクリックイベン...
-
ボタンの枠線の様なものを消したい
-
C#で動的に作ったtextboxを消す。
おすすめ情報