[Excel] Macro pour copier coller avec filtre [Résolu/Fermé]

Signaler
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
-
 Jimbo -
Bonjour,

Avec plusieurs onglets de même structure sur des fichiers différents, j'aimerai rassembler (donc copier coller) toutes les informations filtrées auparavant (par exemple par date) sur un seul onglet également de structure identique.

Dans un deuxième temps j'aimerai que les informations rassemblées se suivent (nouvelles lignes), donc ne supprime en aucun cas les informations déjà collées.

En fait pour être proche de la réalité, je m'explique : chaque personne doit remplir tous les jours un fichier excel personnalisé qu'il me renvoie. Mon but est de rassembler toutes les informations des personnes sur un seul et même onglet afin d'exploiter ces informations.

J'ai essayé d'être le plus clair possible. Pour tout détail, je suis là.

D'avance, je vous remercie pour votre aide et de vos réponses, qui je l'imagine seront constructives au fur et à mesure.

Karaboudjan

15 réponses

Messages postés
22
Date d'inscription
samedi 25 août 2007
Statut
Membre
Dernière intervention
17 avril 2011

Bonjour,
Récapitulons :
Tu as un fichier de base "Base" que tu veux enrichir régulièrement à partir des données d'autres fichiers "Fich1", "Fich2", ... que tu auras, au préalable, filtrés pour éviter de recopier plusieurs fois les mêmes données !
Est-ce bien çà ?
A premiere vue je ferai comme çà :

"Base" doit avoir 2 onglets :
1° onglet avec les données "Donnée" avec comme 2° ligne les titres des colonnes et dans la cellule (1,1) le nombre de lignes non nulles
2° onglet avec un interface qui te permet :
- D'afficher ton critère de filtre (Date ou autre chose)
- De saisir le nom du fichier dont tu veux rapatrier les données

Après c'est du VB ...
Combien as-tu de fichiers à traiter par jour ??
Si tu n'en as pas beaucoup,la procédure pourrait être :

Ouvrir le fichier a rapatrier
Ouvrir "Base"
Saisir critère+nom fichier

Le principe du code pourrait être :

Lire nom fichier
Lire nb de lignes non nulles :cells(1,1)
Lire les critères de filtre
Lire ou compter le nombre total de ligne de "Fich1"
Faire une boucle sur le nombre de ligne de "Fich1"
Tester à chaque ligne les conditions
-> si OK copie des informations dans "Base" puis ligne suivante de "Fich1" à partir de la dernière ligne +1
-> si pas OK ligne suivante de "Fich1"
jusqu'à la fin de "Fich1" ...

Dis moi si le principe te parait bon
@+
Sans Macro:

Pour copier/coller une zone de cellules d'une feuille filtrée, vers une autre zone de cellule de la même ou d'une autre feuille filtrée aussi, et cela sans emmener, ni écrire sur les lignes masquées par ce filtre, j'ai trouvé la solution de copier avec liaison.
En effet la copie avec liaison permet de faire gérer à Excel les cellules comme des formules et non pas des valeurs. (La copie de formules se passe toujours bien)
Ensuite je sélectionne ces valeurs avec liaison collées, et réopère un copier/coller des valeurs de ces cellules collées avec liaison en tant que valeurs.
Le tour est joué.
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

afin de traiter correctement ton problème en VBA le plus simple serai que tu nous envoi un modéle de fichier avec ce lien

https://www.cjoint.com/

A+
Messages postés
4235
Date d'inscription
lundi 31 mars 2008
Statut
Contributeur
Dernière intervention
1 octobre 2020
727
Sorry
j'interfère ¨

d'après ce que je comprend avec ce lien,
il y a moyen sans avoir d'"espace internet à soi" ( le nom m'échappe!)
pauser provisoirement un"objet" qui a la faculté de pouvoir être consulter

champ 1 = ok
2 = pas compris
3 = ok

Désolé, j'apprend à surfer, et c'est dure de rester dans la vague

Merci d'un brin d'expliquation.
Messages postés
4235
Date d'inscription
lundi 31 mars 2008
Statut
Contributeur
Dernière intervention
1 octobre 2020
727
Bonjour,
moi personnellement, je travaillerais en base de données
mais ceci n'engage que moi !
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

Il est possible que cela suffise, c'est pour cela qu'avant de partir tête baissée dans des explications interminables, depuis quelques temps je demande au demandeur de mettre sur le forum un exemple de ses attentes, pour nous permettre de mieux cerner le problème

A+ et bonne journée
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
oui Triton972, c'est à peu près ce que je souhaite mais j'ai environ une vingtaine de "fichier personne" à traiter (lien : https://www.cjoint.com/?ezjpjIR1X2). Je précise que les onglets "dupont" et "lajoie" sont sur des classeurs différents (à leur nom) mais jumelés avec le même onglet "paramètres".
Donc, ce que je souhaite c'est regrouper les informations par date sur ce fichier automatiquement par une macro (https://www.cjoint.com/?ezjrrBPHGt).

En tout cas merci pour votre aide. Je suis toujours là pour répondre à tout renseignement.



To cbeauf : Je n'utilise pas de base de données puisque je dois exploiter les informations du fichier synthèse (statistiques et graphiques). Mais merci du conseil.

To Mike-31 : je suis conscient de ta remarque, mais c'est à titre professionnel que je fais cette démarche, donc il est parfois difficile de mettre les fichiers en ligne sans devoir les modifier avant. Il est clair que ta remarque est judicieuse que je comprends tout à fait.

Karaboudjan
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

vas sur ce lien récupérer une solution

https://www.cjoint.com/?ezqiZjTN2l

au départ ouvres les deux fichiers et depuis Synthèse un bouton déclanche les macros.

Il est possible de les écrires différemment mais pour te permettre de les modifier à tes besoins j'ai opté pour cette formule

teste et on en reparle

A+

Bonsoir Mike,

Vous avez eu récemment un échange (voir mail en histo). Pouvez-vous svp me faire parvenir les fichiers excel que vous aviez crées ?

Merci,
Philippe
------------------------------------------

"Salut,

vas sur ce lien récupérer une solution

https://www.cjoint.com/?ezqiZjTN2l

au départ ouvres les deux fichiers et depuis Synthèse un bouton déclanche les macros.

Il est possible de les écrires différemment mais pour te permettre de les modifier à tes besoins j'ai opté pour cette formule

teste et on en reparle

A+"
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507 > philippe 14
Salut Philippe,

Lorsqu'une discussion est résolue, je ne conserve pas les fichiers.

Ouvres une nouvelle discussion en exposant ton problème concret envois moi un message sur cette ouverture de discussion en message privée pour me permettre de suivre

A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
Comme je suis au travail, je ne peux ouvrir les fichiers zippés. (accès au site de téléchargement bloqué)
Je ne pourrais voir le fichier avant de rentrer chez moi dans 2 jours (soit dimanche).

Si tu es d'accord, on pourra en reparler dès lors. A moins que tu puisses scinder les fichiers zippés.

En tout cas, merci pr ton travail fourni, c'est ultra sympa...

Karaboudjan
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

J'avais opté pour un envoi zip pour expédier les deux fichiers en même temps, mais voila les fichiers séparés

https://www.cjoint.com/?ezrESAAq5A

https://www.cjoint.com/?ezrFhcQaoV

A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
Bonjour,

C'est de l'excellent boulot Mike-31. Je t'en remercie fortement.

Après réflexion (oui, je refléchis parfois !), je me suis dit qu'il valait mieux faire le traitement inverse puisque je reçois les fichiers personnes à des moments différents (c-à-d transfert des données personnes vers le fichier synthèse).
Donc ce qu'il faudrait, c'est un bouton sécurisé (sécurisé aux seuls accès à l'administrateur du fichier synthèse) sur chaque onglet personne pour un transfert vers le fichier synthèse !!!
Est-ce qu'il y a beaucoup de manip par rapport aux macro existante ?

Sinon c'est exactement çe que je voulais... Merci du coup de main !!!

Karaboudjan.
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

Tout est possible, il faut veiller à la simplicité d'utilisation, ce que je te propose c'est de créer un code pour le déclenchement de la macro, plutôt qu'un code par onglet ce qui rendrai plus lourd le fichier et contraignant le nombre de code à retenir.

Si c'est ce que tu veux donne moi ton code d'accès afin de l'intégrer à la macro et un code différent pour accèder à tes macros, afin que personne autre que toi y est accès afin éventuellement de le changer, modifier les macros etc...

respecte bien les majuscules et minucules et note bien tes codes; Je les saisierai comme tu me les donneras

note ces codes sur un fichier word et utilise ce procèdè pour me les faires parvenir

1/ si ton fournisseur d'accès n'est pas free, dans l'adresse url saisie : https://www.free.fr/freebox/index.html
2/ Lancer free et cliquer sur envoi de gros fichiers
3 Fichier à envoyer faire parcourir et sélectionner le fichier à envoyer
4/ Me notifier du lien par email saisir son adresse mail afin que free te notifie du lien
5/ si tu veux protéger ton fichier saisie un mot de passe
6/ envoyer
Tu recevras de free un mail te donnant l’adresse pour récupérer ton envoi et éventuellement le supprimer dès que je l'aurai réceptionné.
Il ne suffit plus que m’envoyer l’adresse du lien et le mot de passe pour y accéder si tu en a saisie un.
L’intérêt de cette méthode est de pouvoir supprimer le fichier rapidement afin de le protèger et la démarche est anonyme
A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
Salut,

En fait ce n'est pas trop ce que je souhaite. Je m'explique :
Chaque personne aura comme classeur excel les 2 onglets "paramètres" et l'onglet perso "dupont", "lajoie", "Durand", ... d'où autant de classeur que de personnes.
Sur chaque classeur/onglet perso, il me faudrait un bouton pour qu'un administrateur utilisant le fichier synthèse, mette à jour ce dernier dès réception du fichier personne.
D'où le code unique afin d'éviter que la personne mette en marche la macro inutilement (et de la dérégler !). L'utilisateur du code sera celui utilisant le fichier synthèse.
Sinon, par la suite, le code peut-il être modifié ? (code par MP)

Si il y a un problème d'interprétation, n'hésites pas !

Merci beaucoup.

Karaboudjan

Edit : Je viens de voir la modif de ton post ! (14:12)
Comme je suis au boulot, on m'interdit l'accès aux téléchargements (dl.free.fr; en l'occurence)
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
OK, si je te suis le bouton de commande Macro doit être sur le fichier personne et donc sur l'onglet de chaque utilisateur.

EX Dupont aura à sa disposition un classeur personnel avec un onglet paramètre et Dupont et sur ce dernier un bouton et idem pour Lajoie etc...

les macros étant sur le classeur synthèse.

confirme moi que c'est ce que tu souhaites.

n'empêche que tu devras mettre un code d'accès pour protéger le module macro

A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
Oui c'est exactement ça !!!

Mais le code sera unique ?
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Ok dès que j'ai un moment je te fais ça

A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
Oui merci beaucoup pour ton aide !!!

J'ai quelques infos en MP pour toi...
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
Salut,

j'ai reconsidéré les macros, pour te faciliter leurs accès afin de les adapter aux divers agents de ton entreprise. Pour réduire leurs manips, le fichier synthèse reste comme il est, par contre le Classeur_Personnel devrait porter le Nom de l'agent et l'onglet qui actuellement est Dupont ou Lajoie pourrait porter un nom qui serait commun à tous, si tu as une idée fais ma le savoir


A+
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39
cf MP
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021
4 507
que veux tu dire par cf MP
Messages postés
45
Date d'inscription
mardi 15 avril 2008
Statut
Membre
Dernière intervention
23 juillet 2008
39 >
Messages postés
17301
Date d'inscription
dimanche 17 février 2008
Statut
Contributeur
Dernière intervention
20 janvier 2021

"que veux tu dire par cf MP"

Voir en MP (message privé)