|    | 
     ▼キョウコ さん:>こんにちわ。 
 
>シート1のデータのE列の日付から(K3からM3まで)シート2の売上の日付のデータを抽出し 
>シート6へ行ごとコピーしたいのです。 
 
何年何月何日という単一の日付を見つけるには 
ワークシート関数Matchを使います。 
 
しかし、 
> いつからいつまでを抽出 
「期間を抽出」するにはフィルターを使います。 
 
 
Sub Filter1() 'AdvancedFilter である期間を抽出コピー 
  Dim ws1 As Worksheet 
  Dim ws2 As Worksheet 
  Dim ws3 As Worksheet 
  Set ws1 = Worksheets("Sheet1") 
  Set ws2 = Worksheets("Sheet2") 
  Set ws3 = Worksheets("Sheet6") 
   
  'Sheet2の抽出条件をフィルタオプション用範囲[P1:Q2]にまとめる 
  With ws2 
    'Sheet1[E1]にある列見出し(「売上日」)をSheet2へコピー 
    .[P1:Q1].Value = ws1.[E1].Value 
    .[P2].Formula = ">=" & .[K3].Value2 '開始日付 
    .[Q2].Formula = "<=" & .[M3].Value2 '終了日付 
  End With 
  'フィルターオプション(AdvancedFilter)で抽出コピー 
  With ws3 
    .UsedRange.ClearContents 
    ws1.[A1].CurrentRegion.AdvancedFilter xlFilterCopy, _ 
      CriteriaRange:=ws2.[P1:Q2], CopyToRange:=.[A1] 
  End With 
End Sub 
 | 
     
    
   |