creation macro copie meme cellule de divers fichier XLS

fanadegra

XLDnaute Occasionnel
[Résolu] creation macro copie meme cellule divers fichier XLS

Bonjour à tous

J'ai des fichiers xls "date" nommés de la façon suivante :
20052009R1
20052009R2
20052009R3

21052009R1
21052009R2
21052009R3

etc...

J'aimerai disposer d'un fichier "resumé" par ex qui, en indiquant la date et le R1-R2-R3 (20052009R1) ira me recopier plusieurs lignes d'infos qui sont dans chaque fichier date.

Ces infos à recopier sont en texte ou numériques et sont situés toujours sur les memes lignes
ex toujours sur la feuille "MS" du fichier date (20052009R1) dans les cellules
A3,B3,C3.....Z3
L4,M4,N4.... U4

A24,B24,C24.... Z24
L25,M25,N25... Z25



A46,B46,C46... Z46
L47.... Z47


etc

merci pour votre aide
 
Dernière édition:

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

J'ai bien sur fait une recherche avant de poster mais je suis pas bon actuellement pour ne serais ce enregistrer une macro.

Donc souhaitant avoir une réponse, je suis pas pressé mais sans faire perdre de temps à ceux qui aident les autres voici surement des fils qui font aider à la creation de la macro

https://www.excel-downloads.com/threads/compilation-multifichier.38582/


https://www.excel-downloads.com/threads/extraire-des-donnees-sur-un-fichier-different.113537/

https://www.excel-downloads.com/threads/macro-de-recherche-de-donnees-dans-un-autre-fichier.119596/



merci pour votre aide,
 

Catrice

XLDnaute Barbatruc
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour,

Je veux bien regarder mais il me faudrait un échantillon de fichier type "20052009R1" et un brouillon du fichier "resumé" que tu souhaites générer.

Tous les fichiers type "20052009R1" sont dans un meme dossier ?
 

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour à tous et Merci Catrice pour votre aide
- Les fichiers date seront placés dans le meme dossier pa exemple "Date"
- Pour l'instant pour heberger le fichier j'ai enlevé plusieurs pages pour qu'il soit moins lourd et il n'y aura pas le R1 R2 et R3 en fin de nom des fichiers date.
Donc ce sera par ex: 21052009 22052009 23052009

Voici un exemple de fichier "date" nommé 21052009
Cijoint.fr - Service gratuit de dépôt de fichiers


sur la feuille "MS" je souhaite extraire pour ch fichier date 27 zones de 5 lignes : colonnes de A à BP pour les lignes
3-4-5-6-7
24-25-26-27-28
45-46-47-48-49
66-67-68-69-70
57-88-89-90-91
108-109-110-111-112
129-130-131-132-133
150-151-152-153-154
171-172-173-174-175
192-193-194-195-196
213-214-215-216-217
234-235-236-237-238
255-256-257-258-259
276-277-278-279-280
297-298-299-300-301
318-319-320-321-322
339-340-341-342-343
360-361-362-363-364
381-382-383-384-385
402-403-404-405-406
423-424-425-426-427
444-445-446-447-448
465-466-467-468-469
486-487-488-489-490
507-508-509-510-511
528-529-530-531-532
549-550-551-552-553

la macro sera donc presente dans le fichier "resume" et remplira au fil des jours la feuille "resume" soit 135 lignes /jours

ex fichier resume
Cijoint.fr - Service gratuit de dépôt de fichiers


Merci
 

Catrice

XLDnaute Barbatruc
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour,

Ci-joint une macro qui copie les données souhaitées du fichier date vers le fichier resume1.
La macro prend le fichier dont la date est la plus recente dans le dossier.
Pour les test, les fichiers (dates et resume1) doivent etre dans le meme dossier.
 

Pièces jointes

  • resume1.zip
    14 KB · Affichages: 48
  • resume1.zip
    14 KB · Affichages: 41
  • resume1.zip
    14 KB · Affichages: 39

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour Catrice et merci pour ton aide

La macro correspond à mon besoin, j'aimerai simplement qu'au lieu de prendre le fichier qui a la date la plus recente il prenne tous les fichiers présent dans le dossier.

Un exemple dossier date contenant
Resume1, 15052009, 20052009, 21052009, 22052009 >> dans ce cas la macro partirait des infos du
15052009 puis 20052009, 21052009, 22052009 (donc de la plus ancienne à la plus récente)

si je souhaite par exemple ajouter au dossier date le fichier 20012009 et enlever par exemple le 15052009
>> on aurait en cliquant sur la macro resume1 les données des fichiers présent dans date à savoir : 20012009,20052009,21052009 et 22052009

Voilà ce que je souhaite et merci.
 

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Dernière petite demande et je j'obtiendrai ce que je souhaitais :

imaginons que le debut des cinq lignes en rouge soit la 150-171 et 360 soient vides, je souhaiterais que dans le fichier resume1 on passe à la zone de données suivantes sans qu'il y ait de lignes vides

3-4-5-6-7
24-25-26-27-28
45-46-47-48-49
66-67-68-69-70
57-88-89-90-91
108-109-110-111-112
129-130-131-132-133
150-151-152-153-154
171-172-173-174-175
192-193-194-195-196
213-214-215-216-217
234-235-236-237-238
255-256-257-258-259
276-277-278-279-280
297-298-299-300-301
318-319-320-321-322
339-340-341-342-343
360-361-362-363-364

Merci beaucoup (en principe avec cette dernière demande, tout sera parfait)
 

Catrice

XLDnaute Barbatruc
Re : creation macro copie meme cellule de divers fichier XLS

Re,

Ci-joint une version à tester

Pas bien compris ceci :
imaginons que le debut des cinq lignes en rouge soit la 150-171 et 360 soient vides, je souhaiterais que dans le fichier resume1 on passe à la zone de données suivantes sans qu'il y ait de lignes vides
 

Pièces jointes

  • resume1.zip
    15.7 KB · Affichages: 30
  • resume1.zip
    15.7 KB · Affichages: 29
  • resume1.zip
    15.7 KB · Affichages: 28
Dernière édition:

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Pour ce qui concerne la macro elle fonctionne pour toutes les données.
Par contre lorsque dans le dossier date il y a un fichier 22052009 et je renomme ce dossier 23052009 et egalement un autre fichier 01032009 (en mettant dans la ligne 3 la date du fichier pour les distinguer).
Actuellement la macro va aller chercher les infos dans les 3 fichiers présents dans date mais dans l'ordre horaire de création (22052009, 23052009 et 01032009)
et je souhaiterais dans l'ordre alphanumérique à savoir les données du 01032009 puis 22052009 et 23052009 meme en classant les dossiers dans date

Enfin pour les lignes vides je vais prendre un autre exemple :
imaginons que la 1ère zone (3-4-5-6-7) et la zone (45-46-47-48-49) du fichier 01032009 sont vides et plus précisement (si la ligne 3 est vide la fin de la zone 4-5-6-7 l'est egalement et si la ligne 45 est vide la 46-47-48-49 le sont egalement) et donc je souhaite que les données du fichier "resume" commence à la zone suivante soit la 24-25-26-27-28 puis enchaine sur 66-67-68-69-70.

En quelque sorte les lignes vides extraits des fichiers date ne sont pas recopiées vides sur "resume" mais on passe à la zone suivante.

Merci beaucoup cela m'aide déjà pas mal, en espèrant avoir été clair
 

Catrice

XLDnaute Barbatruc
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour,

Désolé, mais tes explications ne m'aident pas.

Pour ce qui concerne le point 1 :
Tu veux que les données de nouveaux fichiers aillent s'insérer parmi les autres données ?
Il faut que la macro controle ce qui a déjà été copié ?!
La date dans la colonne A correspond elle à la date du fichier ?

Pour le point 2 :
La description des lignes ne m'aide pas trop.
Peux-tu décrire les différents cas de figures du format des données à l'aide du fichier joint.
Où peut il y avoir des lignes vides au sein de la zone, ce qu'il faut copier, pas copier etc ...
Les zones peuvent elle etre contigue ?

Actuellement, la macro balaie la colonne A, quand elle rencontre une date, elle copie la zone sur 5 lignes.
Elle peut etre modifiée facilement s'il n'y a pas de zone contigue.

Les noms de fichiers peuvent ils avoir le format : aaaammjj.xls ?

Merci
 

Pièces jointes

  • exemple.xls
    14.5 KB · Affichages: 55
  • exemple.xls
    14.5 KB · Affichages: 55
  • exemple.xls
    14.5 KB · Affichages: 59
Dernière édition:

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour,

Désolé, mais tes explications ne m'aident pas.

Pour ce qui concerne le point 1 : Tu veux que les données de nouveaux fichiers aillent s'insérer parmi les autres données ?
Exemple :je mets dans le dossier date (de façon manuelle toutes les données des dates impairs et donc j'enlève de ce dossier les jours pairs) en cliquant je prends un fichier resume vierge mis dans le dossier date et il va copier les infos du fichier 01052009, 03052009 etc s'il manque un fichier il passera au suivant en fonction du n° de date du fichier le plus bas au plus haut.
Si je veux faire un resume sur les 5 derniers lundi (de façon manuelle j'organise mon fichier date et resume va me copier les zones qui m'interessent de la date la plus petite à la date la plus recente


à partir du moment où il y a un fichier date MS dans le dossier date, je souhaite que les données soient collectées.
s'il y a 25 fichiers date MS dans le dossier date, il y a des zones de 5 L X 68 colonnes à récuperer en principe tout est expliqué dans le fichier joint


Il faut que la macro controle ce qui a déjà été copié ?!
pas forcement je crois qu'avec le fichier ci joint tout sera clair mais n'hésite pas à me poser des questions

La date dans la colonne A correspond elle à la date du fichier ?
oui surement au format 1-mars sauf si cela pose un soucis de format par rapport au fichier nommé 01032009

Les noms de fichiers peuvent ils avoir le format : aaaammjj.xls ?
en principe non, je nomme toujours les fichiers ainsi 01032009 mais je peux changer de format si besoin pour des besoins de classement.
si cela n'a pas d'importance je garde le format 01032009. ce qui m'importe c'est que si dans le dossier date il y a 3 fichiers date MS ils soient classés par date de fichier du plus ancien au plus récent (ordre chronologique 01032009, 21052009, 22052009) et non pas de la date la plus ancienne à la plus récente de modif


Merci

Cijoint.fr - Service gratuit de dépôt de fichiers

Merci à toi, je pense que le fichier sera plus clair pour toutes les questions. j'ai crée un fichier 01032009 pour que tu constate les differentes possibilités
 

Catrice

XLDnaute Barbatruc
Re : creation macro copie meme cellule de divers fichier XLS

Bonsoir,

Je crois que j'ai fini par comprendre ;)
Ci-joint une macro à tester.

Pas besoin de changer les formats de tes noms de fichiers. C'etait plus simple à trier dans l'autre sens (yyyymmdd) mais maintenant la macro le fait.

Tu peux facilement rajouter du code pour filtrer les jours impairs, les lundis, entre 2 dates etc ...
Avec : MonTab


NB, il semble y avoir dans le code existant une variable "sheets" (ou qq chose d'equivalent) qui interfere avec l'objet Sheets ...
Le "S" de sheets ne passe pas en majuscule.
Dans l'exemple joint j'ai refait le fichier sans ces macros.
A priori pas d'incidence mais il est préférable d'éviter les interférences.
 

Pièces jointes

  • resume3.zip
    16 KB · Affichages: 41

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour Catrice,
seule chose à dire génial.

la macro copie et classe les fichiers par date.
Si je rajoute un fichier pour aujourd'hui, la macro tient compte de ce qui a été déjà copié et ne rajoute que le fichier nouveau.

J'ai fait des tests à priori tout est ok.
J'ai pas compris les interférences (dues aux macros existantes dans la feuille date ? et dont je n'ai pas acces pour les modifier). En tout cas tout est ok.

Si j'avais su, j'aurai sollicité le forum avant et m'éviter des jours et des jours de saisies ou copier coller

Merci beaucoup.
 

fanadegra

XLDnaute Occasionnel
Re : creation macro copie meme cellule de divers fichier XLS

Bonjour à tous,

je reprends cet ancien post et la macro qu'avait fait Catrice, que je remercie à nouveau.
mes fichiers sont du type
01012010.xls
02012010.xls

j'ai un bug dans l'exécution de la macro c'est là

MonTab(k) = CDate(Left(F1.Name, 2) & "/" & Mid(F1.Name, 3, 2) & "/" & Mid(F1.Name, 5, 4))

Merci à tous pour vos conseils
 

Statistiques des forums

Discussions
312 370
Messages
2 087 685
Membres
103 637
dernier inscrit
Hojee