|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Bonjour,
Je suis nouveau sur ce forum mais cela fait déjà un moment que je viens lire certaines discussions qui me sont toujours très utiles. C'est donc pour cela que j'implore votre savoir faire pour mon problème qui est le suivant: Le but de la macro est d'importer une plage de données provenant de chaque classeur d'un dossier dans un nouveau classeur. Dans ce nouveau classeur, le souhait est d'avoir une feuille par plage de données prélevées dans chaque classeur du dossier. Ces feuilles doivent porter le nom du classeur d'où proviennent les données. Il faudrait également qu'à chaque lancement de ce nouveau classeur il vérifie si de nouveaux classeurs ont été importés dans le dossier. Si c'est le cas, il faut qu'il importe une plage de données de ce classeur dans une nouvelle feuille portant son nom. Je ne sais pas si j'ai été clair mais en tout cas j'ai fait tout mon possible pour l'être. J'ai vraiment besoin d'aide car mon niveau de connaissances en VBa est trop faible pour réussir à réaliser une telle macro. Merci d'avance pour votre aide. Cordialement |
|
|
00
|
|
|
#2 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
La plage de données est-elle la même pour chaque classeur ? Les feuilles contenant le s données à importer ont-elles le même nom ? lequel ? A titre d'exemple :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
20
|
|
|
#3 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Bonjour et tout dabord merci pour la rapidité de votre réponse!
La plage de données est effectivement la meme pour chaque classeur (A3:G57) et les feuilles comportant les données ont le meme nom : Emissions (g) Merci pour l'attention que vous portez à ma requète. Cordialement |
|
|
00
|
|
|
#4 | |||||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Dans un module standard :
Code :
Dans le module "ThisWorkbook", colle la macro : Code :
__________________
Cordialement. Daniel Citation:
|
|||||
|
20
|
|
|
#5 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Ok super merci!
Mais le problème c'est que j'ai un message d'erreur lorsque je lance la macro... Je vous joins une capture d'écran de l'erreur. Merci Cordialement |
|
|
00
|
|
|
#6 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Ce qui pose un problème si tu as des noms de fichiers de plus de 31 caractères, même si l'on ne tient pas compte de l'extension (.xls). Si l'on tronque les noms à 31 caractères, ne risque-t-il pas d'y avoir des doublons ? dans ce cas, comment les traiter ?
__________________
Cordialement. Daniel Citation:
|
|
|
20
|
|
|
#7 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Bonjour,
Effectivement le problème venait bien de la taille du nom de mon fichier (52 caractères sans l'extension). Si l'on tronque les noms à 31 caractères il n'y aura aucun problème de doublons. Merci pour votre aide ! |
|
|
00
|
|
|
#8 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
30
|
|
|
#9 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Super ca marche !!!
![]() Merci beaucoup Daniel !!! Bonjour, Je me suis rendu compte qu'il fallait aussi que je fasse la meme chose avec les fichiers contenu dans les sous dossiers. Pourriez vous m'aider à trouver la solution ? Merci. |
|
|
00
|
|
|
#10 | |||
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Essaie comme ceci (non testé) :
Code :
__________________
Cordialement. Daniel Citation:
|
|||
|
10
|
|
|
#11 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Ca marche ! Une fois de plus merci !
J'avais juste oublié de préciser que la macro ne doit ouvrir que les fichiers excel qui ont un nom où l'on peut trouver le texte "StandardReport". Par exemple les fichiers de types: "*StandardReport*.xls*" Pourriez-vous m'aider à réaliser cela ? Merci |
|
|
00
|
|
|
#12 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Hmm... C'était presque bon.Remplace la ligne :
Code :
If IsNumeric(InStr(1, f.Name, "xls")) Then Code :
If InStr(1, f.Name, "StandardReport") > 0 And InStr(1, f.Name, "xls") > 0 Then
__________________
Cordialement. Daniel Citation:
|
|
|
10
|
|
|
#13 |
|
Invité de passage
![]() Ingénieur qualité méthodes Inscription : février 2012 Messages : 17 ![]() |
Super !!!
Je ne sais comment vous remercier !!! Sans vous je n'y serai jamais arrivé... En tout cas je suis fier de l'entraide présente sur le net et j'éspère que le partage des savoirs y perdurera ! Merci encore |
|
|
00
|
|
|
#14 | |
|
Expert Confirmé Sénior
![]() Daniel aucune Inscription : septembre 2011 Messages : 2 004 ![]() |
Merci du retour. Marque la discussion comme résolue, ça aidera ceux qui cherchent dans les archives du forum.
__________________
Cordialement. Daniel Citation:
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com