Excel VBA質問箱 IV

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

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


15842 / 76734 ←次へ | 前へ→

【66366】Re:複数のチェックボックス動作
発言  kanabun  - 10/8/27(金) 18:33 -

引用なし
パスワード
   ▼とってぃ さん:
こんにちは〜〜

CheckBox_Click()に処理を記述するのでなく、
CommandButtonに カウント作業を一括描き込めばよいのでは?

CkeckBox別検索ワードも 作業用シートに (グループ別)表を
作っておいて、これを参照して 検索したら効率的かと思います。

【temp】シート
-------------------------------------------------------
    Ck1    Ck2    Ck3
Label1    あ    ああ    あああ
Label2    い    いい    いいい
Label3    う    うう    ううう
Label4    え    ええ    えええ
Label5    お    おお    おおお
Label6    か    かか    かかか
Label7    き    きき    ききき
Label8    く    くく    くくく
Label9    け    けけ    けけけ
Label10    こ    ここ    こここ
Label11    さ    ささ    さささ
Label12    し    しし    ししし
Label13    す    すす    すすす
Label14    せ    せせ    せせせ
-------------------------------------------------------


Private Sub CommandButton1_Click()
 Dim v
 v = Worksheets("temp").Range("B2").Resize(14, 10).Value
 
 Dim r As Range
 ReDim tot(1 To 14) As Long
 Dim j As Long, i As Long
 
 With Worksheets("Sheet1")
   Set r = .Range("BS2", .Range("BS65536").End(xlUp))
 End With
 For j = 1 To 10 'CheckBoxの数
  If Controls("CheckBox" & j).Value Then
    For i = 1 To 14 '検索文字列の種類
      tot(i) = tot(i) + WorksheetFunction.CountIf(r, v(i, j))
    Next
  End If
  For i = 1 To 14
    With Controls("Label" & i)
      If tot(i) > 0 Then
        .Visible = True
        .Caption = tot(i)
      Else
        .Visible = 0
      End If
    End With
  Next
 Next
 
End Sub
0 hits

【66363】複数のチェックボックス動作 とってぃ 10/8/27(金) 17:11 質問
【66366】Re:複数のチェックボックス動作 kanabun 10/8/27(金) 18:33 発言

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