Excel VBA質問箱 IV

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

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


4474 / 13645 ツリー ←次へ | 前へ→

【56413】複数のチェックボックスを調べる。 困ってます。 08/6/16(月) 20:28 質問[未読]
【56419】Re:複数のチェックボックスを調べる。 n 08/6/16(月) 22:44 発言[未読]

【56413】複数のチェックボックスを調べる。
質問  困ってます。  - 08/6/16(月) 20:28 -

引用なし
パスワード
   初歩的な質問で恐縮なのですが、どうしてもわからないので教えて下さい。
下記の様なチェックボックスとテキストボックスが有ります。
チェックボックス1 テキストボックス
チェックボックス2 テキストボックス
チェックボックス3 テキストボックス

チェックボックスにチェックされた隣に文字列を入力出来るとします。
各、1,2,3は区分、番号、名前として
オートフィルタでそれぞれがチェックされた時に
例えば1と3ならば区分と名前でオートフィルタで抽出。
1と2ならば、区分と番号、すべてなら区分、番号、名前で抽出
としたいのですが各チェックボックスがオンなのか?の判断と
オートフィルタをどう書けばいいのか?悩んでます。
IF?CASE?DO?何をどうすればいいのか?
お手すきな方はどうぞ宜しくお願い致します。

【56419】Re:複数のチェックボックスを調べる。
発言  n  - 08/6/16(月) 22:44 -

引用なし
パスワード
   こんにちは。
簡易的なサンプルですが。

Option Explicit

Sub サンプルシート作成() 'できたシートのCheckBoxクリック
  Dim i As Long

  With Sheets.Add
    With .Range("A1:C20")
      .Formula = "=address(row(),column(),4)"
      .Value = .Value
    End With
    With .Range("E1")
      For i = 1 To 3
        With .Cells(i, 1)
          With .Worksheet.CheckBoxes.Add _
              (.Left, .Top, .Width, .Height)
            .Placement = xlFreeFloating
            .OnAction = "try"
          End With
        End With
        With .Cells(i, 2)
          With .Worksheet.TextBoxes.Add _
              (.Left, .Top, .Width, .Height)
            .Placement = xlFreeFloating
            .Text = VBA.Array("A2*", "B2*", "C2*")(i - 1)
          End With
        End With
      Next
    End With
  End With
End Sub

Sub try()
  Dim i As Long
  
  With ActiveSheet
    For i = 1 To 3
      If .CheckBoxes(i) = xlOn Then
        .UsedRange.AutoFilter Field:=i, _
                   Criteria1:=.TextBoxes(i).Text
      Else
        .UsedRange.AutoFilter Field:=i
      End If
    Next
  End With
End Sub

>チェックボックスにチェックされた隣に文字列を入力出来るとします。
この辺は考慮してません。あくまで考え方の一例として。

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