2017-07-20 7 views
2

2つのワークシートを持つワークブックがあります.1番目は広い範囲のデータと数式を持ち、2番目は空のテーブルを2つ含み、sheet1から特定の日付を取ります。 Sheet1には日付Range( "DK7:DK39")の列があり、範囲は1981年5月1日から5/1/2018までです。この列(「DK7」)で最初の日付が変更されると、次の年の他の日付はすべて、その年の同じ日に自動更新されます。これらの変更により、日付別のデータに基づいて決定された新しいデータが2つの別々の列に再投入されます。2つのステートメントを含む次のループの場合 - コピー&ペースト

セル(「DK7」)の値をその範囲の各日付に変更して、データが必要な日数範囲(5/1〜8/28)をループするコードを実行しようとしています。 。しかし、2つのデータ列(「DS7:DS38」)&(「DT7:DT38」)からのデータをコピーして、1986年から2017年の年を2つのシート2のy軸にコピーするループが必要ですx軸の行として5/1〜8/28を使用します。私はCell( "DK7")を通して日付をループする方法を考え出しましたが、コピー&をそれぞれの年/日付カラムの2番目のワークシートに貼り付けることはできません。どのような助けも大変感謝しています。

Private Sub CommandButton1_Click() 

Dim i As Date 
For i = ("5/1/1986") To ("8/28/1986") 
Range("DK7").Value = i 

Worksheets(1).Range("DS7:DS38").Copy 
Worksheets(2).Range("D4:E36").PasteSpecial 

Next i 

End Sub 

答えて

0

これは、日付をループする良い方法です:世界中の日付フォーマットの間には大きな差があるよう

Public Sub TestMe() 

    Dim i As Date 
    For i = DateSerial(1986, 5, 1) To DateSerial(1986, 8, 28) 
     Debug.Print i 
    Next i 
End Sub 

あなたがDateSerial()functionを使用していることを確認してください。

関連する問題