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 :

tant que non apparu, ne pas déplacer


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut tant que non apparu, ne pas déplacer
    Bonjour à tous,

    j'ai un petit problème d'ordre technique,

    J'ai crée un fichier où j'ai crée une macro. elle permet de faire:
    1- créer un fichier pdf (avec acrobat distiller) avec un nom générique (ex : Devis) dans un dossier 1
    2- déplacer le fichier vers un dossier 2 que je souhaite
    3- efface le fichier du dossier 1

    Mon problème est que le fichier pdf peut mettre du temps avant d'apparaitre (20-30sec). Comment pourrait on faire pour mettre une condition entre l'étape 1 et 2 qui empecherait de déplacer le fichier tant le dossier 2 tant qu'il n'est pas apparu dans le dossier 1
    Peut être en faisant quelque chose du genre :
    - des que le fichier apparait, déplacer le fichier


    Merci de votre aide

    bye

    Pipo

  2. #2
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonjour,

    tu peux peux-être vérifier périodiquement son existence (utilisation de la fonction Dir), voire sa taille (utilisation de la fonction FileLen) et prendre tes décisions en connaissance de cause.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    re bonsoir,

    Je suis encore novice en vba, Pourrais tu m'expliquer un peu plus en me montrant un exemple de ces fonctions stp?

    merci de ta réponse

    Pipo

  4. #4
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Bonsoir,

    Mais...

    Ces deux fonctions sont assorties d'exemples on ne peut plus clairs dans ton aide en ligne ( ... sur TA machine....) ...

    Je ne saurais donner (sauf par plagiat !!!) un meilleur exemple !!!

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    Re bonsoir,

    Voila j'ai écris ça mais j'ai fait un quelque chose qui marche pas^^
    En fait j'ai fait une récursivité comme en C mais ça doit pas marcher ici

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Sub verfierSiFichierExiste_V02()
        While Dir("C:\Documents and Settings\...\pipo.txt") = ""
            verfierSiFichierExiste_V02
        Wend
            MsgBox "OK"
    End Sub

    Je souhaiterai que tant que le fichier n'existe pas (vérifier toute les 5 secondes peut etre) ne rien faire et des qu'il existe qu'il déplace mon fichier (pour l'instant j'ai mis un MsgBox pour les tests.

    Merci de votre aide

    Pipo

  6. #6
    Inactif  

    Profil pro
    Inscrit en
    Juillet 2007
    Messages
    4 555
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2007
    Messages : 4 555
    Points : 5 535
    Points
    5 535
    Par défaut
    Pas besoin d'une fonction pour celà !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    While Dir("C:\Documents and Settings\...\pipo.txt") = ""
            DoEvents
    Wend
    Mais je n'aime pas cette solution qui va beaucoup solliciter le processeur

    Il convient plutôt de se servir d'un timer et de vérifier toutes les x secondes.

    Comme VBA ne dispose pas de timer, tu peux utiliser l'Api de Windows pour en créer un.
    Tu as pour celà un exemple dans la FAQ.

  7. #7
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    je vais me plonger la dedans alors car je connais pas du tout

    pipo

  8. #8
    Membre à l'essai
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    44
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 44
    Points : 22
    Points
    22
    Par défaut
    bonsoir,

    voila j'ai un peu cherché sur ce dont tu m'as parlé (les api de windows) mais bon j'y connais vraiment rien

    Pourrait tu m'expliquer un petit peu plus stp?

    Je récapitule ce que je souhaiterai: Une macro qui recherche si un fichier existe.
    Si le fichier existe c tout bon
    Si le fichier n'existe pas, attendre x secondes avant de retester la macro

    merci

    pipo

Discussions similaires

  1. Réponses: 3
    Dernier message: 23/06/2008, 13h28
  2. tant que non fin de fichier
    Par magicbisous-nours dans le forum SQL
    Réponses: 4
    Dernier message: 19/12/2007, 07h04
  3. Réponses: 3
    Dernier message: 07/08/2007, 16h12
  4. tant que je n'ai pas un nombre >0 . . .
    Par zac_7 dans le forum Débuter
    Réponses: 4
    Dernier message: 28/05/2007, 14h41
  5. desactivé bouton fermer tant que tt n'est pas saisi
    Par mat75019 dans le forum Access
    Réponses: 7
    Dernier message: 11/04/2006, 20h34

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