Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


1194 / 76734 ←次へ | 前へ→

【81195】処理を中断
質問  はるあき  - 20/3/5(木) 13:30 -

引用なし
パスワード
   初めまして。
現在、練習でVBAを使って両替計算表を作ろうとしています。
入金フォームに必要事項を入力すると、"入金"テーブルにデータが追加されるような感じで作ろうと考えています。


そこで、データ入力を抜かすとIf文でメッセージボックスが出るように組んでみたのですが、メッセージ自体は表示されますが、その時点で入力している文がテーブルに追加されてしまいます。

If文で引っかかったら、残りのプログラムを実行しないようにしたいのですが、中々調べても出てこないので質問させていただきました。

もし、コードで改善出来る点もありましたら是非よろしくお願いします…


Private Sub registre_click()

  tmp = "を入力してください。"
  sen = "千円札の枚数" + tmp
  hoka = "円の枚数" + tmp

  If datebox.Text = "" Then
    MsgBox "日付" + tmp, , "入力漏れ"
    
  ElseIf namebox.Text = "" Then
    MsgBox "担当者名" + tmp, , "入力漏れ"
  
  ElseIf manbox.Text = "" Then
    MsgBox "1万円札の枚数" + tmp, , "入力漏れ"
  
  ElseIf gosenbox.Text = "" Then
    MsgBox "5" + sen, , "入力漏れ"
  
  ElseIf nisenbox.Text = "" Then
    MsgBox "2" + sen, , "入力漏れ"
  
  ElseIf senbox.Text = "" Then
    MsgBox "1" + sen, , "入力漏れ"
  
  ElseIf gohyakubox.Text = "" Then
    MsgBox "500" + hoka, , "入力漏れ"
  
  ElseIf hyakubox.Text = "" Then
    MsgBox "100" + hoka, , "入力漏れ"
  
  ElseIf gojubox.Text = "" Then
    MsgBox "50" + hoka, , "入力漏れ"
  
  ElseIf jubox.Text = "" Then
    MsgBox "10" + hoka, , "入力漏れ"
  
  ElseIf gobox.Text = "" Then
    MsgBox "5" + hoka, , "入力漏れ"
  
  ElseIf itibox.Text = "" Then
    MsgBox "1" + hoka, , "入力漏れ"
  End If

  Sheets("入金").Activate
  
  Dim ws As Worksheet
  Dim tbl As ListObject
  Dim N As Long
  
  Set ws = Worksheets("入金")
  Set tbl = ws.ListObjects.Item("入金")
  
    With ws.ListObjects("入金")
      .ShowTotals = False
    End With
    
    With Range("E4").ListObject
    N = .ListColumns(1).Range.Count
      tbl.ListRows.Add
      tbl.ListColumns(1).Range(N + 1) = N
      tbl.ListColumns(2).Range(N + 1) = namebox.Text
      tbl.ListColumns(3).Range(N + 1) = datebox.Text
      tbl.ListColumns(4).Range(N + 1) = manbox.Text
      tbl.ListColumns(5).Range(N + 1) = gosenbox.Text
      tbl.ListColumns(6).Range(N + 1) = nisenbox.Text
      tbl.ListColumns(7).Range(N + 1) = senbox.Text
      tbl.ListColumns(8).Range(N + 1) = gohyakubox.Text
      tbl.ListColumns(9).Range(N + 1) = hyakubox.Text
      tbl.ListColumns(10).Range(N + 1) = gojubox.Text
      tbl.ListColumns(11).Range(N + 1) = jubox.Text
      tbl.ListColumns(12).Range(N + 1) = gobox.Text
      tbl.ListColumns(13).Range(N + 1) = itibox.Text
    End With
    
    With ws.ListObjects("入金")
      .ShowTotals = True
    End With
End Sub

7 hits

【81195】処理を中断 はるあき 20/3/5(木) 13:30 質問[未読]
【81196】Re:処理を中断 マナ 20/3/5(木) 18:29 発言[未読]
【81198】Re:処理を中断 マナ 20/3/5(木) 18:47 発言[未読]
【81202】Re:処理を中断 はるあき 20/3/6(金) 9:32 お礼[未読]
【81199】Re:処理を中断 Jaka 20/3/5(木) 18:49 発言[未読]
【81200】Re:処理を中断 Jaka 20/3/5(木) 19:03 発言[未読]

1194 / 76734 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free