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 :

Copier des fichiers sans les ouvrir [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut Copier des fichiers sans les ouvrir
    Bonjour à tous,
    j'ai créé une procédure qui crée des répertoires pour le suivi d'élèves qui doivent y déposer leur travail journalier.
    Je voudrais alimenter chaque répertoire d'un fichier type enregistrer dans nos modèles.

    Actuellement quand on arrive au bon sous répertoire, j'ouvre mon modèle et je l'enregistre sous ledit répertoire, en changeant l’extension.

    Mais vu qu'il y a plus de 25 élèves, qui ont chacun 3 répertoires, ça fait 25X3 = 75 ouvertures / fermetures. C'est un peu long, même si c'est beaucoup plus rapide qu'à la main et sans erreur...

    J'ai comme l'impression qu'il doit y avoir une meilleure façon de faire.

    Est-ce quelqu'un peut m'aider, svp ?

  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 : 68
    Localisation : Canada

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

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

    Va "pêcher" filecopy dans ton aide de VBA. Il y a même un exemple.

  3. #3
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut
    Bonsoir Clément,
    Merci pour ta réponse ; effectivement ça va plus vite...

  4. #4
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut
    Bonsoir,
    J'ai crié victoire un peu vite...
    Voici mon code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Public Const Chem As String = "A:\Oasis\Répertoires Ex\"
    sub...
    Dim Src As String, Destin As String, SessEx As String
            Src = Chem & "ListeDesStagiaires.xlsm"    ' Définit le nom du fichier source.
            Destin = Chem & "ListeDesStagiaires " & SessEx & ".xlsm"    ' Définit le nom du fichier cible.
            FileCopy Src, Destin    ' Copie le fichier source dans le fichier cible.
    ...end sub
    j'ai bien mes chemins
    Nom : Poub1.png
Affichages : 3901
Taille : 2,2 KoNom : Poub2.png
Affichages : 3903
Taille : 2,5 Ko
    et l'erreur 70 d'excel est Permission refusée ! sur la ligne FileCopy bien sur
    De quel droit ? c'est qui qui commande ?

    Trêve d'humour. Qu'ai-je donc fait de mal ? stp.
    Merci

  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 : 68
    Localisation : Canada

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

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

    Cela fait trop longtemps que je n'ai pas utilisé Filecopy et la bibliothèque est sur le point de fermer. Je vais tester plus tard chez-moi et compléter demain. Ceci dit, je ne suis pas sûr que Filecopy permette la modification du nom de fichier durant l'Opération.

    Mais là, tu affrontes aussi l'impossibilité. d'avoir deux fichiers du même nom dans le même dossier.

    Tu peux essayer de faire quelque chose en 3 temps:

    1) Tu fais le Filecopy vers un dossier différent.
    2) Tu renommes ton fichier copié avec la commande Name. De mémoire, cela se fait comme cela:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Name "c:\copie\machintruc as C:\copie\Machinchouette
    3) Tu refais un Filecopy du fichier renommé vers le dossier original.


    Plus tard, ce soir (il est 16h40, chez-moi), je vais voir si tu ne peux pas t'en sortir en une ligne avec le FileSystemObject. Mais, compte tenu du décalage horaire, cela pourrait prendre du temps avant que je ne revienne.

    Avec un peu de chance, tu vas peut-être avoir une autre réponse, plus tôt.

  6. #6
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut
    Clément,
    Merci de m'avoir répondu.

    je ne suis pas sûr que Filecopy permette la modification du nom de fichier durant l'Opération.
    Dans l'exemple de l'aide, Excel change le nom du fichier :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Dim SourceFile, DestinationFile
    SourceFile = "FICHSRC"    ' Définit le nom du fichier source.
    DestinationFile = "FICHDEST"    ' Définit le nom du fichier cible.
    ' Copie le fichier source dans le fichier cible.
    FileCopy SourceFile, DestinationFile
    deux fichiers du même nom dans le même dossier.
    Non, je renomme pour changer de nom, il s'agit d'une sauvegarde avant des modifications : dans destin il y a SessEX qui s'inserre dans le nom du fichier.

    Mais là je commence à fatiguer, je ne sais plus où j'en suis.
    Je vais tout fermer et j'essaierai demain au bureau, car il me semble qu'avant d'avoir mis en résolu, j'avais fait un test qui avait fonctionné ; maintenant je ne sais plus si j'ai rêvé...
    Si c'est également ko au bureau j'essaierai ce que tu proposes.
    Bonne fin de soirée

  7. #7
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut
    Bonjour Clément,
    Effectivement, j'étais très fatiguée hier soir, mes chemins étaient pleins de fautes et de ratés.
    Bref j'ai mis un bon moment à tout remettre en ordre, mais pour 208 traitements, cela en valait la peine.

    Encore une fois merci de ton aide.
    NB je confirme qu'on peut changer de répertoire et d'extension.

  8. #8
    Inactif  

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

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

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

    Tant mieux !!!!!!!!!!!!!!!!!!!!!!!!!!!!

  9. #9
    Membre actif
    Femme Profil pro
    reconversion en cours
    Inscrit en
    Juillet 2009
    Messages
    631
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : reconversion en cours
    Secteur : Conseil

    Informations forums :
    Inscription : Juillet 2009
    Messages : 631
    Points : 255
    Points
    255
    Par défaut
    Bonjour,
    Juste une petite rectification qui a son importance :
    FileCopy permet de renommer l'extension d'un fichier (ici je renommai .xltm par xlsm), c'est vrai, sauf que le fichier xlsm ne peut pas s'ouvrir, par le motif
    "Impossible d'ouvrir le fichier "Nom.xlsm" car son format ou son extension n'est pas valide".

    Par contre si je renomme avant de lancer ma procédure le fichier xltm par xlsm, FileCopy fonctionne parfaitement, en changeant le nom du fichier.
    Attention Si un fichier "Nom.xlsm" existe déjà, FileCopy le remplace sans rien demander et sans info

    Je n'ai pas fait de test avec d'autres extension.

    Bonne continuité à tous et encore merci à Clément

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

Discussions similaires

  1. Impression de fichiers sans les ouvrir
    Par luca.donati dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/01/2013, 16h22
  2. [XL-2010] Copier des cellules ( sans les formules)
    Par PhilGood11 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 14/02/2012, 15h21
  3. [Débutant] Impression auto des fichiers sans les ouvrir
    Par da_latifa dans le forum ASP.NET
    Réponses: 9
    Dernier message: 05/12/2011, 23h31
  4. déplacer des fichiers sans les répertoires
    Par ravaza dans le forum Scripts/Batch
    Réponses: 2
    Dernier message: 14/11/2011, 18h13
  5. Réponses: 0
    Dernier message: 11/11/2010, 23h35

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