1.VBE画面で、挿入-ユーザーフォーム
2.ユーザーフォーム上にテキストボックスを2個貼りつける。コマンドボタンを1個貼りつける(フィルタ実行起動用)。
3.コマンドボタンをダブルクリック。
Private Sub CommandButton1_Click()
End Sub
が出る。
4.コードを下記のようにする。
Private Sub CommandButton1_Click()
datefrom = UserForm1.TextBox1.Text
dateto = UserForm1.TextBox2.Text
' MsgBox datefrom
' MsgBox dateto
'----
Range("a1:c12").Select
Selection.AutoFilter Field:=1 _
, Criteria1:=">" & datefrom, Operator:=xlAnd _
, Criteria2:="<" & dateto
End Sub
5.実行-SUB/ユーザーフォームの実行をクリック。
6.始期年月を入力。2004/5/14のように。TABキーで
次のテキストボックスへ移動
7.終期年月を入力。2004/5/20のように。
8.コマンドボタンをクリック。
9.フィルタが実行されて、ワークシートに
日時 氏名 コード
2004/5/14 山村 k
2004/5/16 植山 d
2004/5/17 下山 r
2004/5/18 中山 f
2004/5/19 山中 g
2004/5/20 山内 h
--------
テスト用元データはA1:C12に
日時 氏名 コード
2004/4/23 山田 a
2004/4/30 山下 b
2004/5/13 山上 c
2004/5/14 山村 k
2004/5/16 植山 d
2004/5/17 下山 r
2004/5/18 中山 f
2004/5/19 山中 g
2004/5/20 山内 h
2004/5/21 外山 I
2004/5/22 大山 j
でした。
お礼
初歩的な質問に、丁寧な回答をありがとうございました。TextBoxからの所得は"Value"ではなく、"Text"で行えばいいんですね。ありがとうございました。