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 :

problème de logique dans une boucle


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 54
    Par défaut problème de logique dans une boucle
    Bonjour

    J’ai un petit problème de construction logique : je fais un code qui dois me permettre d’ouvrir un workbook
    Dont le nom change en fonction de la date à laquelle on le génère (toujours la date de fin de mois en cours exemple : si je génère le fichier aujourd’hui le nom sera position_extract_20110331)
    Le but est de pouvoir activer le fichier quelque soit le jour de l’année ou je le lance Etant donné que la date indiqué est toujours celle de la fin du mois au moment du lancement, j’ai pensé faire une boucle sur 12 mois
    En code « parlé » ca donnerai

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    IF nom du workbook = position 30 janvier THEN 
    Ouvrir
    ELSE IF nom du workbook = position 28 fevrier THEN
    Ouvrir
    ELSE IF nom du  workbook = position 31 mars THEN 
    Ouvrir
    ….
    je n’arrive pas à structurer la boucle, je dois faire des erreurs sur la relation objet collection je crois

    j’identifie le workbook avec le code suivant, mais après je bloque….

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Application.Workbooks("position_extract_" & (Format((DateSerial(Year(Now), 1, 31)), _
    "yyyymmdd"))).Activate

    Merci d’avance pour votre aide !

  2. #2
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 184
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 184
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Je n'ai pas très bien compris ce que tu veux exactement mais voici le code d'une boucle qui te permet de connaître le dernier jour de chaque mois de l'année en cours.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
     Dim m As Byte
     For m = 1 To 12
      Debug.Print Day(DateSerial(Year(Date), m + 1, 0))
     Next
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2010
    Messages
    54
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2010
    Messages : 54
    Par défaut
    Merci pour ce retour en fait pour etre un peu plus clair : si je génère le fichier aujourd’hui ( c’est un workbook parmi
    d’autres workbooks déjà ouvert) j’aurai le nom suivant position_extract_20110331
    le but est de pouvoir l’ouvrir (parmi d’autres workbooks déjà ouvert ) j’avais l’idée de parcourir une boucle relatant 12 noms possible ( 1 par mois, sur la base du nom concaténé ci-dessus dans mon premier message)
    en disant si un nom de workbook dans application est le suivant (janvier) alors activer le fichier sinon si un nom de workbook dans application est le suivant (fevrier) alors activer le fichier…et ainsi de suite jusqu'à trouver le nom
    J’espère que j’ai été un peu plus clair

    Merci

Discussions similaires

  1. [SimpleXML] Google Maps, Problème d'encoding dans une boucle
    Par yahn dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 23/09/2006, 20h40
  2. Réponses: 2
    Dernier message: 28/08/2006, 14h16
  3. Problème de SCANF dans une boucle WHILE
    Par FidoDido® dans le forum C
    Réponses: 4
    Dernier message: 30/12/2005, 18h42
  4. [Conception] Problème de test dans une boucle while
    Par Cyrius dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 26/11/2005, 19h07
  5. Problème avec TNMSMTP dans une boucle.
    Par Orgied dans le forum Web & réseau
    Réponses: 3
    Dernier message: 07/04/2004, 11h19

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