XL 2019 Transformer fichier ventes en journal de vente comptable

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

david gom

XLDnaute Nouveau
Bonjour à tous,

Je souhaiterais transformer un fichier de ventes qui reprend plusieurs informations en journal de ventes comptable.

Je met dans le fichier l'exemple auquel je dois arriver.

Je vous joins le fichier à transformer.

Merci de votre aide,
 

Pièces jointes

bonjour et bienvenue sur xld,

Puisque vous êtes sous xl2016, voici une solution par power query (inclus dans votre version : onlget 'données/obtenir des données').

Pour mettre à jour il suffit de cliquer 'Données/Actualiser tout' ou de faire un click-droit dans une cellule du tableau résultat puis 'Actualiser'.

Si vos données proviennent d'une importation, il est possible d'aller les chercher directement dans le fichier. S'il y a d'autres comptes créditeurs que 'Vente TTC', il est possible également d'arranger la requête en fonction d'une liste de comptes créditeurs.

Cordialement
 

Pièces jointes

VB:
Option Explicit

Sub genCompta()
    Dim lcJournal As Range
    Dim rJournal As Range
    Dim rCompta As Range
    Dim rowsjournal As Range
    With fJournal
        Set lcJournal = .UsedRange.SpecialCells(xlCellTypeLastCell)
        Set rowsjournal = .Range(.[A2], lcJournal).Rows
    fCompta.Cells.Clear
    End With
    Set rCompta = fCompta.[A1:F1]
    rCompta.Cells(1, "A") = "date"
    rCompta.Cells(1, "B") = "compte"
    rCompta.Cells(1, "C") = "libellé"
    rCompta.Cells(1, "D") = "montant débit"
    rCompta.Cells(1, "E") = "montant crédit"
    rCompta.Cells(1, "F") = "Pièce"
    Set rCompta = rCompta.Offset(1, 0)
    For Each rJournal In rowsjournal
        rCompta.Cells(1, "A") = rJournal.Cells(1, "B")        'Date
        rCompta.Cells(1, "B") = fJournal.[D1]           'Compte
        rCompta.Cells(1, "C") = rJournal.Cells(1, "C")  'Libellé
        rCompta.Cells(1, "D") = rJournal.Cells(1, "D")  'Montant débit
        rCompta.Cells(1, "E") = ""                      'Montant crédit
        rCompta.Cells(1, "F") = rJournal.Cells(1, "A")  'Pièce
        Set rCompta = rCompta.Offset(1, 0)
        rCompta.Cells(1, "A") = rJournal.Cells(1, "B")        'Date
        rCompta.Cells(1, "B") = fJournal.[E1]           'Compte
        rCompta.Cells(1, "C") = rJournal.Cells(1, "C")  'Libellé
        rCompta.Cells(1, "D") = ""                      'Montant débit
        rCompta.Cells(1, "E") = rJournal.Cells(1, "E")  'Montant crédit Ventes HT France
        rCompta.Cells(1, "F") = rJournal.Cells(1, "A")  'Pièce
        Set rCompta = rCompta.Offset(1, 0)
        rCompta.Cells(1, "A") = rJournal.Cells(1, "B")        'Date
        rCompta.Cells(1, "B") = fJournal.[F1]           'Compte
        rCompta.Cells(1, "C") = rJournal.Cells(1, "C")  'Libellé
        rCompta.Cells(1, "D") = ""                      'Montant débit
        rCompta.Cells(1, "E") = rJournal.Cells(1, "F")  'Montant crédit Ventes HT Export
        rCompta.Cells(1, "F") = rJournal.Cells(1, "A")  'Pièce
        Set rCompta = rCompta.Offset(1, 0)
        rCompta.Cells(1, "A") = rJournal.Cells(1, "B")        'Date
        rCompta.Cells(1, "B") = fJournal.[G1]           'Compte
        rCompta.Cells(1, "C") = rJournal.Cells(1, "C")  'Libellé
        rCompta.Cells(1, "D") = ""                      'Montant débit
        rCompta.Cells(1, "E") = rJournal.Cells(1, "G")  'Montant crédit Compte TVA
        rCompta.Cells(1, "F") = rJournal.Cells(1, "A")  'Pièce
        Set rCompta = rCompta.Offset(1, 0)
    Next rJournal
        
End Sub

La solution est en pièce jointe.

Cordialement,
--
AP
 

Pièces jointes

Notre forum d’entraide est 100 % gratuit et le restera.
Aucune formation payante, aucun fichier à acheter, rien à vendre. Mais comme tout site, nous devons couvrir nos frais pour continuer à vous accompagner.
Soutenez-nous en souscrivant à un compte membre : c’est rapide, vous choisissez simplement votre niveau de soutien et le tour est joué.

Je soutiens la communauté et j’accède à mon compte membre

Discussions similaires

Réponses
33
Affichages
734
Réponses
0
Affichages
257
Retour