人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

初歩的な質問で恐縮なのですが、どうしてもわからないので教えて下さい。

エクセルのVBAで記述しようと思います。

下記の様なチェックボックスとテキストボックスが有ります。

チェックボックス1 テキストボックス
チェックボックス2 テキストボックス
チェックボックス3 テキストボックス

チェックボックスの隣に文字列を入力出来るとします。

各、1,2,3は区分、番号、名前として
オートフィルタでそれぞれがチェックされた時に
例えば1と3ならば区分と名前でオートフィルタで抽出。
1と2ならば、区分と番号、すべてなら区分、番号、名前で抽出
としたいのですが

各チェックボックスがオンなのか?の判断と
オートフィルタをどう書けばいいのか?悩んでます。

IF?CASE?DO?何をどうすればいいのか?

お手すきな方はどうぞ宜しくお願い致します。

●質問者: iwasakitetsurin
●カテゴリ:コンピュータ 学習・教育
✍キーワード:エクセル チェックボックス テキスト フィルタ ボックス
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● きゃづみぃ
●50ポイント

If CheckBox1.Value Then Range("A1") = "ON" Else Range("A1") = "OFF"

CheckBox1がチェックついてるならば A1に ON

ついてないなら OFFをセットします。


Range("A1").Select

Selection.AutoFilter

オートフィルタセット

Selection.AutoFilter Field:=1, Criteria1:="ON"

1列目を ONでフィルタします。

http://www.eurus.dti.ne.jp/~yoneyama/Excel/vba/vba_autofilter.ht...

◎質問者からの返答

無事に解決しました。有難う御座いました。


2 ● matsuoki
●50ポイント ベストアンサー

■各チェックボックスがオンなのか?の判断

コントロールの値の参照は、vbaから、

Sheet1.Checkbox1.value

Sheet1.Textbox1.text

等で確認出来ます。Checkbox1,Textbox1等の名前は、デザインモードで

コントロールを選択して、右クリック→プロパティで変更・参照可能です。

Excelの場合、LinkCellというプロパティでコントロールの値とセルの値を連動させることが出来ます。

CheckboxでLinkCell=A1にしておくと、Checkboxの値がA1のセルに表示されます。

今回は無理かもしれませんが、コントロールの値をワークシート関数で処理したりも出来るので

非常に便利な場合が有ります。

■オートフィルタをどう書けばいいのか?悩んでます。

Excelのマクロの大半は、helpを引かなくても

ツール→マクロ→新しいマクロの記録→実際にやりたい操作をしてみる→記録終了で

VBAのコードを作れます。それによると、下記のようなものが出来ました。

Selection.AutoFilter

Selection.AutoFilter Field:=1, Criteria1:="条件1"

Selection.AutoFilter Field:=2, Criteria1:="条件2"


お役に立てれば。

◎質問者からの返答

無事に解決しました。有難う御座いました。

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ