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 :

Arreter une boucle FOR avant une valeur connue


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 9
    Par défaut Arreter une boucle FOR avant une valeur connue
    Bonjour,

    J'essaie d’arrêter une boucle sur une colonne avec un "Total"

    3030
    3131
    3232
    Total

    J'arrive à l’arrêter sur "Total" mais pas sur le dernier chiffre avant "Total"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    For i = 1 To 20
     
    ................................... 
     
     If d = "Total" Then
      Exit For
     End If
    Pouvez-vous m'aiguiller ?

  2. #2
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    Tu cherches quelque chose qui égale le mot (texte, string) total et tu obtiens quelque chose qui est le mot total. Tout est normal, il fait exactement ce que tu lui as dis de faire.

    En supposant que j'ai compris :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    total = 3232
    for i = 1 To 20
     
    ................................... 
     
         If d =  total Then
             Exit For
         End If
    next

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 9
    Par défaut
    Mon 3232 c'est un exemple, la valeur change et je voudrais la valeur au dessus de "Total"

  4. #4
    Membre chevronné
    Homme Profil pro
    retraité enseignement
    Inscrit en
    Mars 2013
    Messages
    213
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Saône (Franche Comté)

    Informations professionnelles :
    Activité : retraité enseignement
    Secteur : Enseignement

    Informations forums :
    Inscription : Mars 2013
    Messages : 213
    Par défaut
    hello

    Je pense que la structure d'itération employée n'est pas la bonne, lorsque l'on s'arrête en cours de parcours il vaut mieux utiliser

    "Tant que <condition vraie>

    traitement

    "Fin du tant que"
    Qui se traduit en anglais "While <condition> ................... Wend" (end of while)

    je vous propose ce code :
    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
     
    Sub essai()
     
    Dim ligne As Integer, valeur As Integer
     
    'ligne départ par exemple 1 colonne par exemple 1
    colonne = 1
    ligne = 1
    While Cells(ligne, colonne) <> "Total"
        ligne = ligne + 1
    Wend
     
    'sortie du n° de ligne de "total"
    'la valeur au dessus de total est donc en ligne -1
    valeur = Cells(ligne - 1, colonne).Value
     
     
    End Sub
    Bonne soirée

    geogeo

  5. #5
    Inactif  

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

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

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Nom : voyante-2943.gif
Affichages : 114
Taille : 41,2 Ko

Discussions similaires

  1. Arreter une boucle for sur chaque element
    Par biohazard401 dans le forum Langage
    Réponses: 10
    Dernier message: 26/11/2015, 00h34
  2. : remplir des zones de texte avec une boucle For
    Par Haro_GSD dans le forum Access
    Réponses: 3
    Dernier message: 20/09/2005, 22h23
  3. Problème avec une DLL dans une boucle For
    Par BraDim dans le forum Langage
    Réponses: 5
    Dernier message: 20/09/2005, 13h22
  4. [batch] incrémentation dans une boucle for
    Par bart64 dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 08/09/2004, 21h05
  5. Réponses: 3
    Dernier message: 06/07/2004, 11h21

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