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] Probleme d'egalite


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut [VBA-E] Probleme d'egalite
    Coucou,

    j'ai un petit souci dans le code suivant, je comprend pas pourquoi il y a une condition qui vérifie une egalité (que j'ai mise en gras) qui est toujours vraie (alors qu'elle ne devrait pas)

    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
     
    Public Sub Report_Seuils()
     
        Dim NbLignes As Double
        Dim NumeroJour As Integer
        Dim NomFolder As String
        Sheets("résultats_globaux").Activate
        [A1].Select
        NbLignes = Selection.End(xlDown).Row
     
        'on recupere le numero du jour et on augmente la case de 1 dans la feuille visuel
        For i = 2 To 2
     
            NumeroJour = Int(Mid(Sheets("résultats_globaux").Cells(i, 3), 1, 2))
            NomFolder = Sheets("résultats_globaux").Cells(i, 5)
            Debug.Print NomFolder
            Debug.Print Sheets("visuel").Cells(3, 2)
            For j = 1 To 6                         'NombreFolder
                If (Sheets("visuel").Cells(3, j + 1) = NomFolder) Then
                    Debug.Print j
                    Debug.Print Sheets("visuel").Cells(3, j + 1)
                    Debug.Print NomFolder
                    Sheets("visuel").Cells(NumeroJour + 3, 2) = Sheets("visuel").Cells _
    (NumeroJour + 3, 2) + 1
                End If
            Next
     
            'on fait la somme de la colonne et on met le resultat
            'dans la ligne "Nombre de seuils non atteints"
     
        Next
     
    End Sub
    voici ce que j'ai avec les debbug.print :

    Valeur1
    Valeur2
    2
    Valeur1
    Valeur1

    on remarque que ma boucle avec j ne fait qu'un "tour" et que ma variable NomFolder qui valait Valeur2 vaut Valeur1 et ca je comprend pas pourquoi !


    Ps : je vien d'essayer CSTR(Sheets("visuel").Cells(3, j + 1)) à tout hasard mais bon... non

  2. #2
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 344
    Par défaut
    Ça correspond à quoi toutes ces valeurs la ? En fait je comprend pas trop le but de ta macro

    Sinon fait tourner la macro au pas a pas détaillé et tu verra surement ce qui cloche
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut
    en fait dans "resultats globaux" j'ai des resultats ligne à ligne, avec dans une colonne le numéro du jour, dans une autre mon "NomFolder" etc...

    Là je veux faire une sorte de recaptitulatif visuel avec un tableau qui ressemble à ca :

    / FOLDER1 / FOLDER2 / ....
    1
    2
    3
    4

    où 1,2... sont les jours du mois (là ya pas de souci là dessus) et dans ma page de resultats globaux j'ai sur un ligne (je met que ce qui nous interesse) :

    Date du type "12/05/2006 15:21" donc mon "mid" de mon code me permet de recuperer le "12" et ainsi savoir à quelle ligne je doit ajouter "1" par contre là mon soucis c'est pour trouver à quelle colonne car j'ai aussi le FOLDER dansmes lignes et là en gros je veux comparer ce nom de FOLDER avec FOLDER1 etc... mais c'est là qu'est le probleme il trouve toujours une egalité.. j'ai essayé aussi avec Strcomp mais meme resultat...

    le pas à pas detaillé? je vois pas trop comment l'utiliser j'ai utilisé des debug.print quest ce que ca pourrait m'aporter de plus?

  4. #4
    Membre éclairé
    Profil pro
    Inscrit en
    Février 2006
    Messages
    932
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations forums :
    Inscription : Février 2006
    Messages : 932
    Par défaut
    Oh mon dieu !

    je suis trop connnn

    je cherchais depuis tout à l'heure sur la comparaison...
    alors que le probleme etait là

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Sheets("visuel").Cells(NumeroJour + 3, 2) = Sheets("visuel").Cells _
    (NumeroJour + 3, 2) + 1
    normal que ca allait toujours colonne 2 si je met colonne 2... bref en remplacant par 1+j tout va bien

  5. #5
    Expert confirmé Avatar de illight
    Homme Profil pro
    Analyste décisionnel
    Inscrit en
    Septembre 2005
    Messages
    2 344
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Bas Rhin (Alsace)

    Informations professionnelles :
    Activité : Analyste décisionnel
    Secteur : Service public

    Informations forums :
    Inscription : Septembre 2005
    Messages : 2 344
    Par défaut
    Le pas à pas détaillé te permettra justement de voir ligne à ligne ce qu'il se passe dans ta macro et la valeurs de toutes tes données à chaque ligne que tu avance c'est très pratique je te l'assure

    Tu verras à ce moment la pourquoi ton égalité est toujours vraie en fonction des valeurs que prenne toutes tes variables

    (je pense que tu le sais mais on sait jamais : quand tu passe avec ta souris sur une variable, quand tu fais le pas a pas détaillé, tu auras sa valeur )
    1. Avant de poster, et http://www.developpez.com/sources/
    2. Lors du post, n'oubliez pas, si besoin les balises CODE => voir ici pour l'utilisation
    3. N'oubliez pas le
    4. N'oubliez pas le si la réponse vous a été utile !

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

Discussions similaires

  1. [VBA] [Excel] Probleme de rafraichissement d'un label
    Par lejert dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 15/11/2005, 17h09
  2. [VBA-E] Probleme couleur macro
    Par Mugette dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 20/09/2005, 11h11
  3. [VBA-E] Probleme supression de la virgule
    Par Flyin_arno dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 26/07/2005, 15h22
  4. [enum] probleme d' egalité
    Par BainE dans le forum MFC
    Réponses: 4
    Dernier message: 29/06/2005, 13h39
  5. [VBA-E] problème avec le sendkeys
    Par darkpocket dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 23/02/2005, 14h25

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