![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
いつもお世話になります。
OSはWin10、Office365 です。
VBAの勉強中でオプションボタンにトライしています。
下記の構文を作成7したのですが「入力」コマンドボタンをクリックしても作動できません。
ご指導いただけませんでしょうか。
参考
Private Sub UserForm_Initialize()
TextBox1.Text = Format(Date, "mm/dd")
End Sub
'[登録]ボタンクリック時の処理
Private Sub CommandButton1_Click()
If TextBox2.Value = "" Then
MsgBox ("必須の電話番号が入力されていません。")
TextBox7.SetFocus
End If
Exit Sub
Dim コントロール1 As Control
For Each コントロール1 In Frame1.Controls
If コントロール1.Value = True Then Exit For
Dim n As Long '行の変数
n = 2
Do While Cells(n, 8) <> ""
n = n + 1
Loop
Next
Cells(n, 2) = TextBox1.Text '入力日
Cells(n, 3) = TextBox2.Text '電話番号
Dim errmsg As String
If TextBox2.Text = "" Then errmsg = errmsg & "必須の電話番号が入力されていません。" + vbNewLine
TextBox2.SetFocus
TextBox1.Text = Format(Date, "mm/dd")
TextBox2.Text = ""
コントロール1.Value = ""
TextBox1.SetFocus
End Sub
'*********************
'終了 YOKOHAMA CHABIN
'*********************
Private Sub CommandButton2_Click()
End
End Sub
![「コマンドボタン(入力)をクリックしても作」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/7/542530572_5eaf94b42b7ea/M.jpg)
No.4ベストアンサー
- 回答日時:
Private Sub CommandButton1_Click() ’CommandButton1が押されると実行する
If TextBox2.Value = "" Then ’TextBox2の値が””(空白)ならば、
MsgBox ("必須の電話番号が入力されていません。") ’メッセージを出力
TextBox7.SetFocus ’どこにあるか不明ですがTextBox7にフォーカスを設定(選択、入力モード)
End If ’条件分岐終了
Exit Sub ’Private Sub CommandButton1_Click()の実行が終了 (条件分岐終わって通常処理になったのに終了してはダメじゃん)
これは、End Ifの後にExit SubがあるのでPrivate Sub CommandButton1_Click()の実行が終了します。
なので条件 If TextBox2.Value = "" Then だった時に実行をやめるのでEnd Ifの直前に書きます。
従って、#2の回答の様にします。
ユーザーフォームがロードされる時に実行されます。
Private Sub UserForm_Initialize()
TextBox1.Text = Format(Date, "mm/dd")
End Sub
>Cells(n, 2) = TextBox1.Text '入力日 '※2
TextBox1には、05/04のような表示がされているはずですが
取り敢えずコード上からここまで
上手くできました。
丁寧なご指導で本当にありがとうございます。
先は遠いですがほんの少しずつ前に進んでいます。
参考に下記のようにしました。
Private Sub CommandButton1_Click()
If TextBox2.Value = "" Then
MsgBox ("必須の電話番号が入5力されていません。")
Exit Sub
TextBox2.SetFocus
End If
No.3
- 回答日時:
>よく理解できないまま※1にしました。
#2の回答の様にしてください。
Cells(n, 2) = TextBox1.Text '入力日 '※2 エラー?
nは2以上が代入されTextBox1は空白でもエラーは出ないかと、、
何れにしても
ご質問のコードを整理したほうが良いですね。
>コマンドボタンをクリックしても作動できません。
につきましては、#2の様にしてください。
コードに登場するコントロールが配置されていれば実行できると思います。
No.2
- 回答日時:
#1
読み直し、すみません訂正します。
Private Sub CommandButton1_Click()
If TextBox2.Value = "" Then
MsgBox ("必須の電話番号が入力されていません。")
TextBox7.SetFocus
Exit Sub
End If
上記の様にExit SubをIF条件TRUE内に入れてください。
No.1
- 回答日時:
コードを整理する必要があるようにも思いますが
TextBox7.SetFocus
End If
Exit Sub ここですべての場合に抜けています。
なので
Exit Sub は不要ですので削除してみてください。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA Userformで一部別シートに転記がしたいのですが 2 2023/05/24 13:08
- Visual Basic(VBA) VBA 重複チェック後に値をワークシートに転記する方法を教えてください。 1 2023/03/19 12:43
- Visual Basic(VBA) ユーザーフォーム「frm_基本❶」を立ち上げると新規で入力する行数を右下のNoとして表示しています。 1 2023/03/16 19:02
- Visual Basic(VBA) いつもお世話になっております、VBAで教えて頂きたいのですが 2 2022/05/05 22:20
- Visual Basic(VBA) VBAで質問ですが、皆さんはどの様に導き出しているのでしょうか? 6 2022/05/03 21:53
- Visual Basic(VBA) Excel VBA ユーザーフォーム1のコンボボックスに別ブックの値を反映させたいです。 6 2023/03/21 16:12
- Visual Basic(VBA) エクセルのマクロについて教えてください。 3 2023/02/22 08:53
- Visual Basic(VBA) ユーザーフォームの書き出しで追加のご相談 ユーザーフォームの値をシートに書き出す際、コードが表示され 2 2022/08/05 10:58
- Excel(エクセル) マクロでテキストファイルを読み込んだ際の最終セルにデータと改行が含まれる問題の改善方法 2 2022/03/25 16:50
- Excel(エクセル) VBAについて 3 2022/06/19 18:19
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
タブキー押下時のイベントをひ...
-
ユーザーフォームのテキストボ...
-
VB.NETのDropDownListをReadOnl...
-
【VB】タブ切り替え時のイベント
-
複数のテキストボックスのカン...
-
EXCEL VBA でIEを制御して、INP...
-
コンボボックスにキー入力をさ...
-
コマンドボタン(入力)をクリッ...
-
VB6で電卓を作っているのですが...
-
KEYPREVIEW=TRUEについて。意味...
-
【Mouse Down】キーリピートを...
-
特定のキーを押すまでループさ...
-
ListViewで、PageDownキーイベ...
-
javascript スムーズな動作
-
WPFでの時刻入力コントロールに...
-
Excel VBA マクロ実行中のみテンキ...
-
Access データ表示 完了時のイ...
-
EXCEL VBA----ユーザーフォーム...
-
SelectionChangeCommitted
-
VB.NETでフォームがない...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VB】タブ切り替え時のイベント
-
特定のキーを押すまでループさ...
-
一定時間操作されないと自動で...
-
Visual Basic 6.0 コンボボック...
-
タブキー押下時のイベントをひ...
-
WPFでの時刻入力コントロールに...
-
コンボボックスにキー入力をさ...
-
(VBA)チェックボックスのclick...
-
VB.NETのDropDownListをReadOnl...
-
Excel VBA マクロ実行中のみテンキ...
-
EXCEL VBA でIEを制御して、INP...
-
キーイベントを擬似的に発生さ...
-
KEYPREVIEW=TRUEについて。意味...
-
テキストボックスの入力文字を1...
-
VB.NETでフォームがない...
-
エクセルVBAのテキストボック、...
-
IEで、BackSpaceで「戻る」機能...
-
C# WMPメディアの終了検知 その2
-
複数のテキストボックスのカン...
-
コマンドボタン(入力)をクリッ...
おすすめ情報
ご指導ありがとうごさいます。
上手くできませんでした
よく理解できないまま※1にしました。
そうしたら※2に黄色の反転が。
Private Sub CommandButton1_Click()
If TextBox2.Value = "" Then
Exit Sub '※1
MsgBox ("必須の電話番号が入力されていません。")
TextBox7.SetFocus
End If
Cells(n, 2) = TextBox1.Text '入力日 '※2
未熟な私にお手数かけます。
誠に恐れ入りますが下記の意味が理解できず試行錯誤しています
良ければ具体的にご指導いただければ幸甚の至りです。
#2
上記の様にExit SubをIF条件TRUE内に入れてください。
コードのに関して整理に関してはここまでやっとこぎつけたところです。
何とかしなければならないですね。
ご指摘に感謝しています