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 :

Instruction "Continue For"


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Août 2017
    Messages : 62
    Par défaut Instruction "Continue For"
    Bonjour,

    L'instruction "Continue For" qui devrait sauter les valeurs de index comprises entre 4 et 9 dans la boucle suivante (créé par Microsoft !) génère une erreur.

    For index As Integer = 1 To 100000
    ' If index is between 5 and 7, continue with the next iteration.
    If index >= 5 And index <= 8 Then Continue For
    Debug.Write(index.ToString & " ")
    If index = 10 Then Exit For
    Next
    Debug.WriteLine("")
    ' Output: 1 2 3 4 9 10

    Merci à celui qui peut éclairer ma lanterne ...

  2. #2
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 969
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 969
    Par défaut
    Bonjour
    Personnellement je n'ai pas compris la demande
    Peux tu expliquer davantage

  3. #3
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    975
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 975
    Par défaut
    Salut, il me semble que ton code n'est pas du vba mais plutôt du vb.
    Indépendamment de ça, tu dis que l'instruction "Continue for" doit sauter les valeurs de index comprises entre 4 et 9 mais dans ta boucle tu testes les valeurs entre 5 et 8 ? Donc c'est normal que ton output affiche 4 et 9. Sous réserve d'avoir compris ton problème.

  4. #4
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Août 2017
    Messages : 62
    Par défaut
    Citation Envoyé par Franc Voir le message
    Salut, il me semble que ton code n'est pas du vba mais plutôt du vb.
    Indépendamment de ça, tu dis que l'instruction "Continue for" doit sauter les valeurs de index comprises entre 4 et 9 mais dans ta boucle tu testes les valeurs entre 5 et 8 ? Donc c'est normal que ton output affiche 4 et 9. Sous réserve d'avoir compris ton problème.
    Bonjour et merci pour la réponse rapide.

    Je ne connais que le code vba (dans Excel). C'est quoi vb ?

    Dans le code proposé par Microsoft, Il est normal que 4 et 9 ne sont pas sautées puisqu'elles ne sont pas comprises ENTRE 4 et 9 !
    Microsoft devrait donc corriger son commentaire " If index is between 5 and 7 ..." (en anglais "between" = "entre", me semble-t-il).
    Mais mon problème est de comprendre pourquoi l'instruction "Continue For" qui devrait (d'après Microsoft) interrompre la lecture des lignes suivantes en faisant sauter la boucle à l'itération suivante n'est pas acceptée ...

    Si je suis intéressé par cette instruction "Continue For" (ou "Continue Do", "Continue While" ...), c'est parce que j'utilise beaucoup de boucles qui doivent sauter à l'itération suivante si une condition n'est pas remplie.
    Actuellement j'utilise l'instruction "GoTo" qui renvoie la lecture du code à une étiquette placée à la fin de la boucle, avant l'instruction "Next".
    Mais "Continue For" fait ça aussi, sans étiquette !

    Voici ce qui m'a mis sur cette piste : /dotnet/visual-basic/language-reference/statements/for-next-statement

    Cordialement,

  5. #5
    Membre Expert
    Inscrit en
    Décembre 2002
    Messages
    975
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 975
    Par défaut
    C'est bien ce que je disais, ton lien renvoie vers du visual basic, celui-ci possède des instructions inexistantes dans vba, c'est le cas de "Continue for" et "Debug.Write (Debug.Print dans vba)
    Voici un lien spécifique au vba: https://learn.microsoft.com/fr-fr/of...g-through-code
    Pour ton exemple de code je pencherais pour une boucle While...Wend.

  6. #6
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Août 2017
    Messages : 62
    Par défaut
    Citation Envoyé par BENNASR Voir le message
    Bonjour
    Personnellement je n'ai pas compris la demande
    Peux tu expliquer davantage
    Bonjour et merci pour ta réponse très rapide.

    Je ne suis pas un grand expert en programmation, mais je m'en sort assez bien en VBA appliqué à Excel.
    Je suis à peu prêt nul en échange sur Internet qui a été ouvert au public vers la fin de ma carrière professionnelle, trop tard pour que j'assimile facilement toutes ses possibilités.
    J'ai pas mal de difficultés à comprendre comment fonctionnent vos forums sur "developpez.net".

    Si je suis intéressé par cette instruction "Continue For" (ou "Continue Do", "Continue While" ...), c'est parce que j'utilise beaucoup de boucles qui doivent sauter à l'itération suivante si une condition n'est pas remplie.
    Actuellement j'utilise l'instruction "GoTo" qui renvoie la lecture du code à une étiquette placée à la fin de la boucle, avant l'instruction "Next".
    Mais "Continue For" fait ça aussi, sans étiquette !

    Voici ce qui m'a mis sur cette piste : /dotnet/visual-basic/language-reference/statements/for-next-statement

    Cordialement,

  7. #7
    Membre confirmé
    Homme Profil pro
    Retraité
    Inscrit en
    Août 2017
    Messages
    62
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 79
    Localisation : Belgique

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Août 2017
    Messages : 62
    Par défaut
    Citation Envoyé par Franc Voir le message
    C'est bien ce que je disais, ton lien renvoie vers du visual basic, celui-ci possède des instructions inexistantes dans vba, c'est le cas de "Continue for" et "Debug.Write (Debug.Print dans vba)
    Voici un lien spécifique au vba: https://learn.microsoft.com/fr-fr/of...g-through-code
    Pour ton exemple de code je pencherais pour une boucle While...Wend.
    Merci d'avoir répondu.
    J'ai découvert VBA en 2008, tout seul en achetant l'excellent bouquin "Excel et VBA" de Mikaël Bidault.
    J'avais bien entendu parler du langage "Basic", mais pas de "Visual Basic" qui me semble très semblable à VBA.
    Tu m'a fait comprendre que Vb ce n'est pas pour moi qui n'est intéressé qu'à traiter des problèmes avec Excel !
    Merci de l'info, et désolé de t'avoir dérangé pour cela.
    Cordialement

  8. #8
    Rédacteur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2013
    Messages
    1 009
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Août 2013
    Messages : 1 009
    Par défaut
    Bonjour,
    Un peu de documentation si vous souhaitez vous mettre au VBA (pour Excel) : Apprendre la programmation en VBA pour EXCEL par la pratique - Première partie

    Il y en a d'autres sur ce site.
    Bonne continuation.

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

Discussions similaires

  1. Besoin d'aide pour Continue for
    Par YassineBa dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 05/03/2017, 10h53
  2. les instructions 'printf et for'
    Par PIC16F877A dans le forum Débuter
    Réponses: 3
    Dernier message: 28/02/2010, 00h05
  3. [Tableaux] boucle for et instruction continue
    Par reg11 dans le forum Langage
    Réponses: 4
    Dernier message: 16/12/2005, 18h00

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