Excel VBA質問箱 IV

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

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


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

【22775】抽出について教えてください じん 05/3/2(水) 23:38 質問[未読]
【22777】Re:抽出について教えてください G-Luck 05/3/3(木) 8:18 発言[未読]
【22784】Re:抽出について教えてください じん 05/3/3(木) 11:37 質問[未読]
【22786】Re:抽出について教えてください G-Luck 05/3/3(木) 11:42 発言[未読]
【22787】Re:抽出について教えてください じん 05/3/3(木) 11:48 発言[未読]
【22788】Re:抽出について教えてください じん 05/3/3(木) 11:53 発言[未読]
【22791】Re:抽出について教えてください G-Luck 05/3/3(木) 13:03 回答[未読]
【22795】Re:抽出について教えてください じん 05/3/3(木) 14:05 お礼[未読]

【22775】抽出について教えてください
質問  じん  - 05/3/2(水) 23:38 -

引用なし
パスワード
   お世話になります。
出来ないなりに、いろんなHPを見て本も見てますが、やっぱりわかりません。
現在顧客管理のを作成しております。
sheet1に
   A     B     C     E     
1  名前   フリガナ   住所    宴会日
2 山田太郎 ヤマダタロウ  大阪市○○ 2003/12/1 
3 山本二郎 ヤマモトジロウ  大阪市○○ 2003/1/5
4 山口花子 ヤマグチハナコ  大阪市○○ 2003/1/6
5 山中恵子 ヤマナカケイコ  大阪市○○ 2003/2/4

といった感じのデータがあります。
ユーザーフォームにテキストボックスとコマンドボタンを配置しテキストボックスに「2003/1」と入力し
コマンドボタンを押すと
Sheet2に
   A     B     C     E     
1  チェック   名前   フリガナ   住所    宴会日
2      山本二郎 ヤマモトジロウ  大阪市○○ 2003/1/5
3      山口花子 ヤマグチハナコ  大阪市○○ 2003/1/6
と抽出したいのですが・・・
※テキストボックスに名前を漢字で入力し、コマンドボタンを押すと・・・上記と同じよう
に出来るというのもしたいです。

が、頭が悪く努力も足りないせいで、まったく前に進みません。
サンプルをつけてコード記述を教えてください。
宜しくお願いいたします。

【22777】Re:抽出について教えてください
発言  G-Luck  - 05/3/3(木) 8:18 -

引用なし
パスワード
   ▼じん さん:
G-Luckといいます。
E列でフィルタをかけて、コピーしてはどうでしょう?

データ>フィルタ>オートフィルタ
E列のフィルタのオプションで、2003/1以上2003/2より小さいにして、
その範囲をコピー

VBAでされたいのであれば、これをマクロ記録したものを、土台にしてみてはいかがですか?

【22784】Re:抽出について教えてください
質問  じん  - 05/3/3(木) 11:37 -

引用なし
パスワード
   ▼G-Luck さん:
おはようございます。
まずVBAで実行できるようにしたいと考えています。
下記の返信内容でマクロ記録をしてみたのですが、指定した年/月がまったく抽出
されません。
>データ>フィルタ>オートフィルタ
>E列のフィルタのオプションで、2003/1以上2003/2より小さいにして、
>その範囲をコピー

また、マクロ記録したコードを土台にした場合、指定した年月の部分をテキストボックスの値にしろ!と記述を修正するのはどうすればよいのでしょうか?

>VBAでされたいのであれば、これをマクロ記録したものを、土台にしてみてはいかがですか?

【22786】Re:抽出について教えてください
発言  G-Luck  - 05/3/3(木) 11:42 -

引用なし
パスワード
   ▼じん さん:
マクロはどうなっていますか?

【22787】Re:抽出について教えてください
発言  じん  - 05/3/3(木) 11:48 -

引用なし
パスワード
   ▼G-Luck さん:
>▼じん さん:
>マクロはどうなっていますか?

おはようございます。
さっそくの返事ありがとうございます。
できなかったので、確認してないです。
確認して報告します!!
スミマセン、飲食店なのでこれから忙しくなって
返信はタイムリーじゃないと思いますが、
宜しくご指導のほどお願いいたします。

【22788】Re:抽出について教えてください
発言  じん  - 05/3/3(木) 11:53 -

引用なし
パスワード
   Selection.AutoFilter Field:=12, Criteria1:=">=Apr-2003", Operator:=xlAnd _
    , Criteria2:="<May-2003"
となっています。
ちなみに実際の表を使って試したので2003/4以上2003/5より小さいと設定してお
ります。

【22791】Re:抽出について教えてください
回答  G-Luck  - 05/3/3(木) 13:03 -

引用なし
パスワード
   ▼じん さん:
お仕事ご苦労様です。

>Selection.AutoFilter Field:=12, Criteria1:=">=Apr-2003", Operator:=xlAnd _
>    , Criteria2:="<May-2003"

お分かりと思いますが、
Apr-2003 が 2003/4
May-2003 が 2003/5
ですね。それで、単純に、2003/4と置き換えると、日付と認識してくれないようです。
そこで、下記のように変換して入力すると出来ました。
後は、2003/1の部分を、TextBox1.Valueと変えてみてください。
ちなみに、下記コードは、データの存在するシート上でのコードです。

Me.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Select
は、オートフィルターの結果のセルを取得しています。

'以下コード
  Dim StartDate  As Date
  Dim EndDate   As Date
  
  StartDate = DateValue("2003/1")
  EndDate = DateAdd("m", 1, StartDate)

  Range("A:D").AutoFilter Field:=4, Criteria1:=">=" & StartDate, _
    Operator:=xlAnd, Criteria2:="<" & EndDate

  Me.AutoFilter.Range.SpecialCells(xlCellTypeVisible).Select

【22795】Re:抽出について教えてください
お礼  じん  - 05/3/3(木) 14:05 -

引用なし
パスワード
   ▼G-Luck さん:
やりました!できました!ありがとうございます!!
気になって、お客さんほったらかしでやりました(笑)
別シートに抽出するのはマクロの記録で挑戦してみます。
わからなければ・・・・・またお願いします。。
本当にありがとうございます。
これじゃ、仕事にならない(笑)

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