Verteilen Sie Daten aus einer Liste der Tagesblätter mit VBA

Anonim

In diesem Artikel erstellen wir ein Makro, um Daten täglich auf mehreren Blättern anzuordnen.

Rohdaten für diesen Artikel bestehen aus tagesbezogenen Verkaufsdaten des Teams, einschließlich Datum, Agentenname und Anzahl der verkauften Artikel.

Wir wollen die Daten tageweise auf mehrere Blätter verteilen. Ein Klick auf die Schaltfläche „Daten täglich verteilen“ bewirkt dasselbe.

Codeerklärung

Tun, bis IsEmpty(Worksheets(1).Cells(intRowS, 1))

Schleife

Im obigen Code wird die Do Until-Schleife eine Schleife durchlaufen, bis eine leere Zelle gefunden wird.

strTab = Format(Cells(intRowS, 1).Value, "ddmmyy")

Der obige Code wird verwendet, um den Blattnamen aus dem Datum zu extrahieren.

intRowT = Worksheets(strTab).Cells(Rows.Count, 1).End(xlUp).Row + 1

Der obige Code wird verwendet, um die Zeilennummer der letzten Zelle zu erhalten.

Bitte folgen Sie unten für den Code

Sub Divide() 'Variablen deklarieren Dim intRowS As Integer, intRowT As Integer Dim strTab As String 'Initialisierung mit Startzeilennummer intRowS = 10 'Überprüfen, ob die Zelle in der ersten Spalte leer ist Do Until IsEmpty(Worksheets(1).Cells(intRowS, 1)) 'Name des Blatts basierend auf dem Datumswert in der ersten Spalte abrufen strTab = Format(Cells(intRowS, 1).Value, "ddmmyy") 'Zeilennummer der letzten Zelle abrufen intRowT = Worksheets(strTab). Cells(Rows.Count, 1).End(xlUp).Row + 1 'Daten in das entsprechende Blatt kopieren Rows(intRowS).Copy Worksheets(strTab).Rows(intRowT) intRowS = intRowS + 1 Loop End Sub 

Wenn Ihnen dieser Blog gefallen hat, teilen Sie ihn mit Ihren Freunden auf Facebook. Außerdem können Sie uns auf Twitter und Facebook folgen.

Wir würden uns freuen, von Ihnen zu hören, lassen Sie uns wissen, wie wir unsere Arbeit verbessern und für Sie verbessern können. Schreiben Sie uns auf der E-Mail-Site