Copie entre fichier excel avec noms variables

[Résolu]
Signaler
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008
-
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008
-
Bonjour à tous,
Voila en fait , je me débrouille en VB mais il est possible que je fass des erreurs de débutant qu'il ne faut jamais faire

Voila le souci ,
je prépare une macro pour que le tableau d'un premier fichier excel soit recopié dans un autre fichier excel .
Ils sont ouverts les deux en meme temps.
Le souci que j'ai , c est qu en fait je voudrais pouvoir récuperer le nom des classeurs par inputbox car la tache de la macro est récurente mais le nom des fichiers excel changent toutes les semaines.
Est ce possible ?
J'ai essayé mais ca n'a rien donné.
Je vous remercie

6 réponses

Messages postés
33
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
25 novembre 2008
1
Bonsoir,

La fonction GetOpenFilename permetjustement d'ouvrir une fenêtre pour indiquer quel fichier tu veux ouvrir. Je ne comprends pas que cela ne marche pas. Où est-ce que cela ne marche pas ?

Didier
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008

Je me suis trompé de partie dans le forum ?
Personne n'a une idée alors ?
Messages postés
33
Date d'inscription
dimanche 26 octobre 2008
Statut
Membre
Dernière intervention
25 novembre 2008
1
Bonsoir,

Je pense que le plus simple est d'ouvrir les deux fichiers avec vba, d'abord le fichier source (celui qui contient les données que tu veux copier) et ensuite le fichier cible. Tu peux le faire comme ceci.

Sub test()
   fichier_source = Application.GetOpenFilename("Excel Files (*.xls), *.xls", , "Fichier source")
   fichier_cible = Application.GetOpenFilename("Excel Files (*.xls), *.xls", , "Fichier cible")
   If fichier_source False Or fichier_cible False Then Exit Sub
   If fichier_source = fichier_cible Then Exit Sub 'fichiers identiques




   Application.Workbooks.Open Filename:=fichier_source
   fichier_source = ActiveWorkbook.Name 'permet de virer le path
   Application.Workbooks.Open Filename:=fichier_cible 
   fichier_cible = ActiveWorkbook.Name 'permet de virer le path

   ' ensuite copie de fichier_source vers fichier_cycle
End Sub



Didier
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008

Ok cool je te remercie je test ca sous peu et puis je valide la réponse si ca marche.

Merci bien Didier
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008

Par contre si j'ai bien compris , faut que je rentre en dur le nom des deux fichiers dans la macro ?

Le souci c est que le fichier change toutes les semaines de nom mais la tache a réaliser est la même.
Je voudrais par exemple ouvrir le premier , lancer la macro qui m affiche un inputbox marquer le nom du deuxieme fichier pour ensuite faire les copies , tu penses que c est possible ?
Quand j'ai essayé moi, ca n'avais pas marché.
Messages postés
6
Date d'inscription
mercredi 9 juillet 2008
Statut
Membre
Dernière intervention
17 décembre 2008

Je te remercie Didier j ai reussi a faire ce que je voulais , en utilisant un openfilename simple c etait moi qui faisait une bétise .
Ta réponse me convient aussi parfaitement , je la valide également.

Je te remercie encore