Dans cet article, nous allons créer une macro pour organiser les données chaque jour sur plusieurs feuilles.

Les données brutes de cet article sont des données de ventes quotidiennes de l’équipe, qui incluent la date, le nom de l’agent et le nombre d’articles vendus.

ArrowRawData

Nous voulons distribuer les données chaque jour sur plusieurs feuilles. Cliquer sur le bouton «Distribuer les données chaque jour» fera de même.

ArrowOutput

Explication du code

Faire jusqu’à IsEmpty (Worksheets (1) .Cells (intRowS, 1))

Boucle Dans le code ci-dessus, la boucle Do Until boucle jusqu’à ce qu’une cellule vide soit rencontrée.

strTab = Format (Cellules (intRowS, 1) .Value, « jjmmaa »)

Le code ci-dessus est utilisé pour extraire le nom de la feuille de la date.

intRowT = Worksheets (strTab) .Cells (Rows.Count, 1) .End (xlUp) .Row + 1 Le code ci-dessus est utilisé pour obtenir le numéro de ligne de la dernière cellule.

Veuillez suivre ci-dessous pour le code

Sub Divide()

'Declaring variables

Dim intRowS As Integer, intRowT As Integer

Dim strTab As String

'Initializing with starting row number

intRowS = 10

'Checking whether cell in first column is empty

Do Until IsEmpty(Worksheets(1).Cells(intRowS, 1))



'Getting name of the sheet based on the date value in the first column

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



'Getting the row number of last cell

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



'Copying data to respective sheet

Rows(intRowS).Copy Worksheets(strTab).Rows(intRowT)

intRowS = intRowS + 1

Loop

End Sub

Si vous avez aimé ce blog, partagez-le avec vos amis sur Facebook et Facebook.

Nous serions ravis de vous entendre, faites-nous savoir comment nous pouvons améliorer notre travail et le rendre meilleur pour vous. Écrivez-nous à [email protected]