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

Macros et VBA Excel Discussion :

[VBA-E]Problème de comptage


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut [VBA-E]Problème de comptage
    Désolé pour la longueur mais ....

    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
    For compteur = 1 To Nb_lignes
            Set CellSerie = ActiveCell.Offset(0, -7)
            Set CellPrev = ActiveCell.Offset(0, -6)
            Set CellRecl = ActiveCell.Offset(0, -3)
            If IsNumeric(CellRecl) Then
                If IsNumeric(CellPrev) And CellPrev > 0 Then
                    If CellRecl > CellPrev Then
                        ActiveCell = WorksheetFunction.Min(CellSerie, CellPrev)
                        Indic_lignes = Indic_lignes + 1
                    Else
                        ActiveCell = CellSerie * CellRecl / CellPrev
                        Indic_VI = Indic_VI + 1
                        If Not Int(ActiveCell) = ActiveCell Then
                            ActiveCell = Int(ActiveCell) + 1
                        End If
                    End If
                Else
                    ActiveCell = WorksheetFunction.Min(CellSerie, CellRecl)
                    Indic_lignes = Indic_lignes + 1
                End If
             Else
                ActiveCell = 0
                Indic_error = Indic_error + 1
                MsgBox Indic_error
            End If        
            ActiveCell.Offset(1, 0).Select
        Next compteur
    Mon problème se situe au niveau des lignes en gras (la MsgBox n'est là que pour tenter de comprendre). En gros après avoir lancé cette procédure, indic_error vaut 0 alors qu'il ne devrait pas. J'ai donc rajouté cette MsgBox qui m'indique les valeurs. Il se passe alors les évnts suivants :

    MsgBox = 1 -> je clique sur OK ->
    MsgBox = 2 -> je clique sur OK ->
    .... ->
    MsgBox = 5 -> je clique sur OK ->
    MsgBox = 1 au lieu de 6-> Msgbox = 2 sans avoir cliqué sur OK

    Et ainsi de suite ... Desfois le reset se produit à 10 et non à 5. Et à la fin reset à 0.

    Aucune idée de là où est le problème ...

  2. #2
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Non aucun !

  3. #3
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    J'ai lu, relu et rerelu en écarquillant les yeux !
    Ce ne peut être ce msgbox là !!!
    Il y en a un autre plus loin, une fois sorti de la boucle montrée ici (seule explication possible) et c'est de ce 2ème là que tu reçois des messages ...(d'autres messages)

  4. #4
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Négatif ! Un seul MsgBox j'ai (re-)vérifié .... Je ne comprends pas non plus
    Je n'ai jamais vu ça ... un msgbox dont la valeur se modifie sans rien lui demander

  5. #5
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    J'ai trouvé !

    Enfin non mais presque ... J'ai quitté Excel et relancé le fichier et hop! Plus de problème ...

    Donc topic résolu mais je ne sais pas d'où venait l'erreur.

  6. #6
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Impossible !
    alors modifies ainsi :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Else
                ActiveCell = 0
                Indic_error = Indic_error + 1
                MsgBox "coucou"
            End If
    et lance !
    on verra bien ce qui s'affiche, hein ?
    Je reviens dans 2 heures .... et m'attends à un oups !

  7. #7
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Je ne vois pas trop ce que tu veux dire ... j'ai fait le test avec "coucou" et aucun problème, le "coucou" s'affiche quand il le faut et ne s'en va pas tout seul.

  8. #8
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Si, après le "coucou", tu n'as pas eu d'affichage de chiffres, celà veut dire qu'en remettant ce qu'il y avait avant, tu n'as pas de problèmes non plus !

  9. #9
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    oui oui
    Comme je l'ai dit hier, quitter et relancer excel m'a résolu le problème : plus d'affichage intempestif ni de modification de valeur. Mais ça ne me dit pas d'où il venait ce problème

  10. #10
    Inactif  
    Avatar de jmfmarques
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    3 784
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 3 784
    Points : 4 674
    Points
    4 674
    Par défaut
    Impossible de le savoir !
    Instabilité du système ?

  11. #11
    Futur Membre du Club
    Inscrit en
    Avril 2006
    Messages
    26
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 26
    Points : 8
    Points
    8
    Par défaut
    Certainement.

    Dans la même veine, il m'arrive d'avoir le fond des feuilles gris quand je lance le fichier. Dès qu'une macro (n'importe laquelle) est exécutée, ce fond redeviend blanc ... Ce bug n'apparait que rarement mais aléatoirement

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

Discussions similaires

  1. [VBA-E] Problème Action "Autofill"
    Par beurnoir dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 02/11/2005, 15h38
  2. [VBA-A] Problème Suppression enreg en cours
    Par _developpeur_ dans le forum Access
    Réponses: 2
    Dernier message: 17/10/2005, 20h08
  3. VBA ... CurrentRecord ... Problème d'utilisation
    Par snoopy69 dans le forum Access
    Réponses: 7
    Dernier message: 17/10/2005, 10h53
  4. [VBA] [WORD] problèmes avec NUMPAGES
    Par meufeu dans le forum VBA Word
    Réponses: 9
    Dernier message: 08/08/2005, 16h24
  5. VBA Importation problème d'INUPUT BOX
    Par snoopy69 dans le forum Access
    Réponses: 8
    Dernier message: 21/12/2004, 16h36

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