IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Discussion :

Problème de code (contrôle de gestion).


Sujet :

VBA

  1. #1
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut Problème de code (contrôle de gestion).
    Bonjour à tous.

    Je débute sur VBA et j'essaye d'automatiser mes premières procédures grâce à ce merveilleux outil.

    Tout les mois je reçois des balances analytiques par numéro de compte.

    Chaque ligne retrace une opération lié à un compte avec une colonne crédit et une colonne débit.

    Les colonnes soldes crédit et solde débit fonctionne par rapport à un groupement de même numéro de compte de compte.

    Par exemple :

    libellé crédit débit Solde crédit Solde débit
    a 5 5
    a -8 -3
    a 10 7
    a 13 20
    b -5 -5
    b -2 -7


    Or moi je veux je veux que le document se présente comme ça :

    libellé crédit débit Solde Crédit Solde Débit
    a 28 8 20
    b -7 -7


    J'ai donc commencer à créer mon code avec des fonctions de base. Voila le fichier :

    Pour Forum GL.xlsm

    Mon code prends la valeur d'un numéro de compte en B2, avec une Loop il va jusqu'à la dernière ligne comprenant ce numéro de compte, le nombre de ligné ayant été passé est enregistré dans "j".


    Ensuite : il est censé faire la somme des plages de crédit dans une cellule, copier cette valeur et la coller sur le dernier compte d'une plage de compte ayant la même valeur.
    Ca fait la même chose pour la colonne débit.

    Ensuite, il est censé effacer toutes les lignes ayant le même numéro de compte, sauf la dernière ou a été calculé la somme des colonnes crédits & somme. Ca se fait via "j" et "x".


    Pour l'instant j'ai 2 problèmes :

    - ça efface certains compte ayant très peu de ligne
    - j'ai une erreur d'exécution 91 entre les comptes 6231 et 6238. Si vous arrivez à savoir pourquoi...



    En espérant que vous puissiez m'aider, je vous remercie....

  2. #2
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    up

  3. #3
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36

  4. #4
    Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2015
    Messages : 3
    Points : 3
    Points
    3
    Par défaut
    Heu ok, je vois pas en quoi joindre un fichier qui contient le code VBA relaté au sujet pose problème lol mais bon, je n'oblige personne à l'ouvrir.

    Tant pis merci quand même.

  5. #5
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2015
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2015
    Messages : 54
    Points : 57
    Points
    57
    Par défaut
    Dis moi si c'est bon:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    Option Explicit
     
    Sub test()
     
    Dim wb As Workbook
    Dim ws As Worksheet
    Dim i As Long, j As Long
    Dim Lastrow As Long
     
    Set wb = ThisWorkbook
    Set ws = wb.Sheets("Doc tr")
     
    Lastrow = ws.Range("A" & Rows.Count).End(xlUp).Row
     
    i = 2
     
    Do Until i = Lastrow
     
    j = 2
        Do Until j = Lastrow
     
            If i <> j Then
     
                 If ws.Range("B" & i).Value = ws.Range("B" & j).Value Then
     
                        ws.Range("G" & i).Value = ws.Range("G" & i).Value + ws.Range("G" & j).Value ' Credit
                        ws.Range("H" & i).Value = ws.Range("H" & i).Value + ws.Range("H" & j).Value ' Debit
                        ws.Range("I" & i).Value = ws.Range("I" & i).Value + ws.Range("I" & j).Value ' Solde credit
                        ws.Range("J" & i) = ws.Range("J" & i) + ws.Range("J" & j) ' Solde Debit
     
                        ws.Range("B" & j).EntireRow.Delete
                        j = j - 1
     
                End If
              End If
     
         j = j + 1
        Lastrow = ws.Range("A" & Rows.Count).End(xlUp).Row
        Loop
     
      i = i + 1
    Loop
     
    End Sub

  6. #6
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Points : 10 166
    Points
    10 166
    Billets dans le blog
    36
    Par défaut
    [QUOTE= lol[/QUOTE]

    IL N'Y A PAS DE QUOI À RIRE.

    Ce n'est pas parce que l'on en parle plus, qu'il n'y a jamais de virus dans des documents Office. Surtout dans les macros.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 31/08/2009, 10h59
  2. problème de code javascript pour une vue 360°
    Par tomguiss dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 14/03/2006, 22h50
  3. [POO] Problème de code PHP avec Internet Explorer
    Par bzoler dans le forum Langage
    Réponses: 5
    Dernier message: 12/02/2006, 11h00
  4. Problème de code besoin d un petit depannage
    Par rakengoule dans le forum MFC
    Réponses: 3
    Dernier message: 10/10/2005, 16h25
  5. Probléme de code non portable
    Par Stany dans le forum Windows
    Réponses: 2
    Dernier message: 23/08/2005, 11h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo