• ベストアンサー

VBA 空白をエラー表示させる!

ボタンをクリックすると、入力ミスがないように MsgBoxで表示させるものを作りましたが TextBox3を都合のため切り取りました! そしたら、エラー表示され If Controls("TextBox" & i).Text = "" Then ↑黄色く表示されます! どのように下の記述を変えれば良いか教えてください! Private Sub CommandButton5_Click() Dim i As Integer For i = 1 To 9 If Controls("TextBox" & i).Text = "" Then MsgBox "判定入力していない項目がありますよ!", vbInformation, "空欄を見て!" Exit Sub End If Next If MsgBox("記録するよ?", vbOKCancel) = vbOK Then With Worksheets("グラフ") 'アセスメント身体 .Range("U2").Value = TextBox1.Value .Range("U3").Value = TextBox2.Value .Range("U4").Value = TextBox3.Value .Range("U5").Value = TextBox4.Value .Range("U6").Value = TextBox5.Value .Range("U7").Value = TextBox6.Value .Range("U8").Value = TextBox7.Value .Range("U9").Value = TextBox8.Value .Range("U10").Value = TextBox9.Value

質問者が選んだベストアンサー

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

>TextBox3を都合のため切り取りました! 当然Controls("TextBox" & 3) が無いのですからエラーになります 方法1. 3を飛ばしてやる For i = 1 To 9   if i <> 3 then     If Controls("TextBox" & i).Text = "" Then       MsgBox "判定入力していない項目がありますよ!", 方法2. For EachでTextBoxを総当りする Private Sub CommandButton5_Click()   Dim myTB As Control   For Each myTB In Me.Controls     If TypeName(myTB) = "TextBox" Then       If myTB.Text = "" Then         MsgBox "判定入力していない項目がありますよ!", vbInformation, "空欄を見て!"         Exit Sub       End If     End If   Next

pop2003
質問者

お礼

早速のお返事ありがとうございます! 助かりました!! 悩みが解決できました。

その他の回答 (1)

  • n-jun
  • ベストアンサー率33% (959/2873)
回答No.1

If i <> 3 Then If Controls("TextBox" & i).Text = "" Then MsgBox "判定入力していない項目がありますよ!", vbInformation, "空欄を見て!" Exit Sub End If End If とか?

pop2003
質問者

お礼

ありがとうございました!! 解決できました!

関連するQ&A