締切済み

VBAの日付範囲の抽出について

  • すぐに回答を!
  • 質問No.7335902
  • 閲覧数2071
  • ありがとう数1
  • 気になる数0
  • 回答数1
  • コメント数0

お礼率 0% (0/1)

作業SheetのC列から日付で範囲指定して検索された行を検索workへ行をコピーしたいのですが、
日付の抽出がうまくできません。どなたかご教授願います。
また、できることなら、オートフィルタを利用せずに抽出したいのですが、書き方がわかりません。
素人の質問で申し訳ございませんが、よろしくお願いします。
 

開始年月日 = ">=" & S受付日Box.Text
終了年月日 = "<=" & E受付日Box.Text
Worksheets("作業Sheet").Range("C1").AutoFilter _
Field:=3, _
Criteria1:=開始年月日, _
Operator:=xlAnd, Criteria2:=終了年月日
Worksheets("作業Sheet").Range("A2").CurrentRegion.SpecialCells(xlCellTypeVisible).Copy _
Worksheets("検索work").Range("A2")
Worksheets("検索work").Range("2:2").Delete 'タイトル行の削除
MsgBox "抽出が完了しました。「検索結果の表示」ボタンから確認してください"

回答 (全1件)

  • 回答No.1

ベストアンサー率 52% (885/1701)

では、AutoFilterではなく、AdvancedFilterで……
作業シートのG1:H2を検索条件用に使用します。
添付の図の様にG列、H列1行目の項目名はC1の項目名と合わせてください。
また、データの範囲や貼り付け位置などは実際の物に合わせて変えてください。

Sub test()
  With Worksheets("作業Sheet")
    .Range("G2") = ">=" & S受付日Box.Text
    .Range("H2") = ">=" & E受付日Box.Text

    .Range("C:E").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=.Range("G1:H2"), CopyToRange:=Worksheets("検索work").Range("C1:E1"), Unique:=False
  End With
  Worksheets("検索work").Rows("1:1").Delete Shift:=xlUp
End Sub
Be MORE 7・12 OK-チップでイイコトはじまる
AIエージェント「あい」

こんにちは。AIエージェントの「あい」です。
あなたの悩みに、OKWAVE 3,500万件のQ&Aを分析して最適な回答をご提案します。

関連するQ&A
こんな書き方もあるよ!この情報は知ってる?あなたの知識を教えて!
このQ&Aにはまだコメントがありません。
あなたの思ったこと、知っていることをここにコメントしてみましょう。
このQ&Aのテーマ

その他の関連するQ&A、テーマをキーワードで探す

キーワードでQ&A、テーマを検索する

特集


より良い社会へ。感謝経済プロジェクト始動

ピックアップ

ページ先頭へ