Excel VBA質問箱 IV

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

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


10777 / 13646 ツリー ←次へ | 前へ→

【19939】チェックボックスのtrueの数の取得について 超−初心者です 04/11/19(金) 16:26 質問[未読]
【19940】Re:チェックボックスのtrueの数の取得につ... Jaka 04/11/19(金) 16:42 発言[未読]
【19941】Re:チェックボックスのtrueの数の取得につ... 超−初心者です 04/11/19(金) 16:50 お礼[未読]
【19942】Re:チェックボックスのtrueの数の取得につ... ぴかる 04/11/19(金) 17:02 回答[未読]
【19950】Re:チェックボックスのtrueの数の取得につ... [名前なし] 04/11/19(金) 22:07 回答[未読]

【19939】チェックボックスのtrueの数の取得につい...
質問  超−初心者です  - 04/11/19(金) 16:26 -

引用なし
パスワード
   こんにちは。
皆様お教えください。
例えば、チェックボックスを5つ作って、チェックされた数を
取得したいのですが。
下記のようにチェックボックスごとに変数を作って、最後にその合計を
出すというマクロを作ったのですが、何か長ったらしい気がします。

もっとスマートな記述があるのでしょうか?
妥当な記述ですか?
教えください。
宜しくお願い致します。


Private Sub CommandButton1_Click()
  Dim a As Integer
  Dim b As Integer
  Dim c As Integer
  Dim d As Integer
  Dim e As Integer
  Dim goukei As Integer
  
  If CheckBox1 = True Then
    a = 1
      Else
        a = 0
  End If
  If CheckBox2 = True Then
    b = 1
      Else
        b = 0
  End If
  If CheckBox3 = True Then
    c = 1
      Else
        c = 0
  End If
  If CheckBox4 = True Then
    d = 1
      Else
        d = 0
  End If
  If CheckBox5 = True Then
    e = 1
      Else
        e = 0
  End If
  
  goukei = a + b + c + d + e
  
End Sub

【19940】Re:チェックボックスのtrueの数の取得に...
発言  Jaka  - 04/11/19(金) 16:42 -

引用なし
パスワード
   こんにちは。

[#19498]
この辺のControlsが参考になると思います。

【19941】Re:チェックボックスのtrueの数の取得に...
お礼  超−初心者です  - 04/11/19(金) 16:50 -

引用なし
パスワード
   Jaka様。
返答ありがとうございます。
参考にさせて頂きます。
失礼します。

【19942】Re:チェックボックスのtrueの数の取得に...
回答  ぴかる  - 04/11/19(金) 17:02 -

引用なし
パスワード
   超−初心者ですさん、こんにちは。

作ってみました。見てもらえるかな?

Private Sub CommandButton1_Click()

Dim A As Integer
Dim I As Integer

  For I = 1 To 5
    If Controls("CheckBox" & I) = True Then
      A = A + 1
    End If
  Next
  MsgBox A
  
End Sub

【19950】Re:チェックボックスのtrueの数の取得に...
回答  [名前なし]  - 04/11/19(金) 22:07 -

引用なし
パスワード
   Private Sub CommandButton1_Click()
  Dim goukei As Integer

  If CheckBox1 Then goukei = goukei + 1
  If CheckBox2 Then goukei = goukei + 1
  If CheckBox3 Then goukei = goukei + 1
  If CheckBox4 Then goukei = goukei + 1
  If CheckBox5 Then goukei = goukei + 1
  Msgbox goukei
End Sub

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