2016-03-30 6 views
-1

Ich richte einige Zahlungspläne ein. Eine Zeile enthält normalerweise 2 bis 4 verschiedene Daten zusammen mit Kundeninformationen. Ich möchte jede Zeile, die das heutige Datum enthält, von Sheet1 nach Sheet2 kopieren.Wie kann ich eine ganze Zeile in ein anderes Blatt kopieren, wenn diese Zeile das heutige Datum enthält?

Vielen Dank für jede Hilfe und lassen Sie mich wissen, wenn Sie zusätzliche Informationen benötigen.

edit: Hier sind einige Dinge, die nicht funktioniert:

mit erweiterten Filter von Sheet2

List Range: Sheet1!$1:$1048576 
Criteria Range: =today() 
Copy To: $a$1 

auch

List Range: Sheet1!$1:$1048576 
Criteria Range: =a1 //with a1 containing the formula =today() 
Copy To: $b$1 
+0

Sie waren lange genug hier, um zu wissen, dass Sie sich Mühe geben müssen. – findwindow

+0

Ich versuche wirklich, Mann. Ich habe gerade 30 Minuten damit verbracht, Sachen zu googeln und auszuprobieren, aber nichts, was ich versuche, scheint zu funktionieren. – mzrt

+0

Also zeig was du probiert hast. – findwindow

Antwort

2

Die folgenden sollte funktionieren.

Sub copyIfTodaysDate() 

    Dim todaysDate As Date 
    Dim rngData As Range 
    Dim rngRow As Range 
    Dim rngCell As Range 
    Dim counter As Integer 

    todaysDate = Date 
    counter = 1 

    Set rngData = Worksheets("Table1").UsedRange 

    For Each rngRow In rngData.Rows 
     For Each rngCell In rngRow.Cells 
      If rngCell.Value = todaysDate Then 
       rngRow.Copy Worksheets("Table2").Rows(counter).Columns(1) 
       counter = counter + 1 
       Exit For 
      End If 
     Next 
    Next 

End Sub 
+0

Danke. Das funktioniert, aber ich muss es jedes Mal ausführen, wenn ich sehen möchte, was heute ist. Gibt es einen anderen Weg, den ich nicht jedes Mal laufen muss? Ich hatte den Eindruck, dass ich das mit Advanced Filter machen könnte. – mzrt

+1

Ja, Sie können den obigen Code in ein Workbook_Open-Ereignis einfügen. Auf diese Weise wird Table2 bei jedem Öffnen der Arbeitsmappe automatisch gefüllt. Wenn Ihr Datensatz jedoch sehr groß ist, kann dies viel Zeit kosten, da der Code beim Öffnen der Arbeitsmappe immer ausgeführt wird. – LMM9790

+0

Ehrfürchtig. Mein Datensatz ist relativ klein - nur etwa 100 Zeilen. Das wird großartig funktionieren. – mzrt

Verwandte Themen