Copier infos sur autre feuille selon critere
Cecarc
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
J'aurais besoin d'aide sur Excel…
En effet je suis en train de faire des remontées d'infos sur Excel et je rencontre un souci. Je m'explique :
J'ai 2 classeurs excel
Le premier comprend une liste de fournisseur avec un onglet par fournisseur
Le second comprend toutes des extractions de données issues de requêtes du système informatique SAP – sur ce classeur il y a une feuille récapitulatif avec toutes les commandes des fournisseurs et différentes infos.
Le but est en fait de récupérer les infos de la feuille de récap du classeur 2 pour les mettre dans les différents onglets du classeur 2 suivant le numéro du fournisseur…
J'ai essayé de regarder dans différents forum mais je ne trouve pas ce que je veux ou alors je ne comprends rien… je n'ai jamais fait de macro via VBA et pour moi c'est du pur chinois ! ^^
Donc si quelqu'un aurait une formule ou pourrait m'expliquer une macro ca serait super sympa !!
Merci d'avance,
Cécile
J'aurais besoin d'aide sur Excel…
En effet je suis en train de faire des remontées d'infos sur Excel et je rencontre un souci. Je m'explique :
J'ai 2 classeurs excel
Le premier comprend une liste de fournisseur avec un onglet par fournisseur
Le second comprend toutes des extractions de données issues de requêtes du système informatique SAP – sur ce classeur il y a une feuille récapitulatif avec toutes les commandes des fournisseurs et différentes infos.
Le but est en fait de récupérer les infos de la feuille de récap du classeur 2 pour les mettre dans les différents onglets du classeur 2 suivant le numéro du fournisseur…
J'ai essayé de regarder dans différents forum mais je ne trouve pas ce que je veux ou alors je ne comprends rien… je n'ai jamais fait de macro via VBA et pour moi c'est du pur chinois ! ^^
Donc si quelqu'un aurait une formule ou pourrait m'expliquer une macro ca serait super sympa !!
Merci d'avance,
Cécile
A voir également:
- Copier infos sur autre feuille selon critere
- Comment copier une vidéo youtube - Guide
- Copier un disque dur sur un autre - Guide
- Super copier - Télécharger - Gestion de fichiers
- Comment imprimer en a5 sur une feuille a4 - Guide
- Feuille de pointage excel - Télécharger - Tableur
15 réponses
Bpnjpur,
pour être "super sympa", il faudrait que tu sois toi aussi sympa de mettre en PJ un extrait du classeur avec les données"SAP" avec des noms de fournisseurs bidon
pour cela
https://www.cjoint.com/
et tu colles le lien proposé dans ta réponse
pour être "super sympa", il faudrait que tu sois toi aussi sympa de mettre en PJ un extrait du classeur avec les données"SAP" avec des noms de fournisseurs bidon
pour cela
https://www.cjoint.com/
et tu colles le lien proposé dans ta réponse
Bonjour,
Voici le lien du ficher sur lequel je dois coller les infos :
https://www.cjoint.com/?eAcjTNCWGA
Et voici celui du ficher sur lequel je dois prendre les infos:
https://www.cjoint.com/?eAckQ8NVJF
Je sais pas si c'est tres clair...
Merci !
Voici le lien du ficher sur lequel je dois coller les infos :
https://www.cjoint.com/?eAcjTNCWGA
Et voici celui du ficher sur lequel je dois prendre les infos:
https://www.cjoint.com/?eAckQ8NVJF
Je sais pas si c'est tres clair...
Merci !
OK, bien reçu...
1/as tu beaucoup de fournisseurs ?
2/ dans la réalité, combien peut-il y avoir ( à peu près) de lignes dans synthèse ?
3/ lors d'une mise à jour de synthèse, doit on remplacer les infos fournisseurs dans recap ou les mettre à la suite
4/ on risque de sacrés problèmes avec tes #N/A dans synthèse, quelle est la raison ou cela apparait-il dans le synthèse.xls réel
que ca soit par fomule ou vba, ce sera du super chinois!
avec tes réponses, je regarderai ca ce WE (dépendra de la météo)
1/as tu beaucoup de fournisseurs ?
2/ dans la réalité, combien peut-il y avoir ( à peu près) de lignes dans synthèse ?
3/ lors d'une mise à jour de synthèse, doit on remplacer les infos fournisseurs dans recap ou les mettre à la suite
4/ on risque de sacrés problèmes avec tes #N/A dans synthèse, quelle est la raison ou cela apparait-il dans le synthèse.xls réel
que ca soit par fomule ou vba, ce sera du super chinois!
avec tes réponses, je regarderai ca ce WE (dépendra de la météo)
J'ai à peu près 60 fournisseurs (donc 60 onglets dans le classeur 1) pour près de 4000 lignes dans la feuille de recap. Après pour les nombres de lignes par fournisseurs bah ca dépend, ca peut aller de 0 à 3-400 environ.
En fait le tableau de synthèse contient dans toutes les case des formules (recherchev ou = ) qui prennent les infos de la base de donnée informatique de la boite (SAP), d'où les #N/A… et le truc c'est que je dois mettre a jour tous les mois le tableau. Donc il faut que je garde toutes les formules comme ca je n'aurais plus qu'a actualiser SAP et mon tableau se mettra a jour automatiquement. Et dans l'idéal il faudrait également que les infos se mettent aussi a jour dans les onglets fournisseurs.
On m'a parlé d'un filtre élaboré… je suis en train de faire des tests pour voir ce que je peux en tirer.
En fait le tableau de synthèse contient dans toutes les case des formules (recherchev ou = ) qui prennent les infos de la base de donnée informatique de la boite (SAP), d'où les #N/A… et le truc c'est que je dois mettre a jour tous les mois le tableau. Donc il faut que je garde toutes les formules comme ca je n'aurais plus qu'a actualiser SAP et mon tableau se mettra a jour automatiquement. Et dans l'idéal il faudrait également que les infos se mettent aussi a jour dans les onglets fournisseurs.
On m'a parlé d'un filtre élaboré… je suis en train de faire des tests pour voir ce que je peux en tirer.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
4000lignes, 2 classeurs et filtre ? ch'uis septique mais peut-être, faut voir...
dans le recap fournisseur, ce que je te demandais c'est quand tu as les nouvelles mensuelles sur "synthèse" doit 'on effacer les anciennes dans les onglets fournisseur de "recap" ou les mettre à la suite en dessous des anciennes ?
ouf pour les #NA!
4000lignes, 60 fournisseurs ==> VBA préférable...
dans le recap fournisseur, ce que je te demandais c'est quand tu as les nouvelles mensuelles sur "synthèse" doit 'on effacer les anciennes dans les onglets fournisseur de "recap" ou les mettre à la suite en dessous des anciennes ?
ouf pour les #NA!
4000lignes, 60 fournisseurs ==> VBA préférable...
Bonjour Cécile,
Hier vendredipm, j'ai du des soucis d'accès à ce forum: j'ai vu que tu m'avais répondu mais il m'a été impossible de lire ton message
Je te propose donc une version qui annule et remplace les anciennes données chez les récap fournissseurs...
J'ai ajouté une page de garde ("home") à recap pour placer le bouton de déclenchement. yu y trouveras quelques commentaires
tu dis...
https://www.cjoint.com/?eBfNM5xW5Q
Hier vendredipm, j'ai du des soucis d'accès à ce forum: j'ai vu que tu m'avais répondu mais il m'a été impossible de lire ton message
Je te propose donc une version qui annule et remplace les anciennes données chez les récap fournissseurs...
J'ai ajouté une page de garde ("home") à recap pour placer le bouton de déclenchement. yu y trouveras quelques commentaires
tu dis...
https://www.cjoint.com/?eBfNM5xW5Q
J'avais oublié que tu pouvais avoir 4000 lignes dans "synthèse"
Donc, il faut modifier "report"
de $B$2:$N$999 à $B$2:$N$6000
Donc, il faut modifier "report"
de $B$2:$N$999 à $B$2:$N$6000
Bonjour,
Merci pour ta réponse.
Je suis en train de tester ton fichier sue les fichiers Test. Si j'ai bien compris je dois mettre les 2 fichiers donc dans le même sous dossier… et ensuite j'ai juste à appuyer sur le bouton "Mise a jour données SAP fournisseurs" c'est ca ? Car quand j'appuie sur ce bouton j'ai un message : Erreur d'exécution '-2147217895 (80040e37)' : Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'report'. Assurez-vous que l'objet existe et que vous avez correctement saisi son nom et son chemin d'accès.
Qu'est ce que ca veut dire ?
Est-ce que j'ai loupé quelque chose ?
Comme je suis encore sous les fichiers tests et par sur les vrai fichiers avec 4000 lignes je ne pense pas que je doive faire la modif 'report"… d'ailleurs elle se fait où cette modif ? ^^
Merci !
Merci pour ta réponse.
Je suis en train de tester ton fichier sue les fichiers Test. Si j'ai bien compris je dois mettre les 2 fichiers donc dans le même sous dossier… et ensuite j'ai juste à appuyer sur le bouton "Mise a jour données SAP fournisseurs" c'est ca ? Car quand j'appuie sur ce bouton j'ai un message : Erreur d'exécution '-2147217895 (80040e37)' : Le moteur de base de données Microsoft Jet n'a pas pu trouver l'objet 'report'. Assurez-vous que l'objet existe et que vous avez correctement saisi son nom et son chemin d'accès.
Qu'est ce que ca veut dire ?
Est-ce que j'ai loupé quelque chose ?
Comme je suis encore sous les fichiers tests et par sur les vrai fichiers avec 4000 lignes je ne pense pas que je doive faire la modif 'report"… d'ailleurs elle se fait où cette modif ? ^^
Merci !
Bonjour,
Je viens de ré-essayer chez moi; c'est sans pb...
as tu copié les 2 fichiers dans un dossier ("essai" par exemple) car il ne faut pas les tester dans le dossier temp lorsque tu ouvres les fichiers à partir de cjoint;
les 2 fichiers étant zippés,il faut les extraire après les avoir téléchargés
Ma version XL est 2003
pour la zone "report":
insertion- nom- définir
sélectionnes "report"
et dans "fait référence à"
tu marques 6000 au lieu de 999
Je viens de ré-essayer chez moi; c'est sans pb...
as tu copié les 2 fichiers dans un dossier ("essai" par exemple) car il ne faut pas les tester dans le dossier temp lorsque tu ouvres les fichiers à partir de cjoint;
les 2 fichiers étant zippés,il faut les extraire après les avoir téléchargés
Ma version XL est 2003
pour la zone "report":
insertion- nom- définir
sélectionnes "report"
et dans "fait référence à"
tu marques 6000 au lieu de 999
Re,
Autant pour moi, ca fonctionne. Quand j'ai dézippé les fichiers ils se sont nommés "Copie_ ..." donc c'est pour ca que ca ne marchait pas !
Cet apres-midi je vais essayer de faire ca avec le vrai tableau. Quelle est la meilleure facon de proceder ? Je recopie les macros dans mes fichiers tout simplement ?
Merci
Autant pour moi, ca fonctionne. Quand j'ai dézippé les fichiers ils se sont nommés "Copie_ ..." donc c'est pour ca que ca ne marchait pas !
Cet apres-midi je vais essayer de faire ca avec le vrai tableau. Quelle est la meilleure facon de proceder ? Je recopie les macros dans mes fichiers tout simplement ?
Merci
re,
dans le fichier "synthèse" il faut absolument retrouver ce que j'ai écrit ligne 2
pour "report"
insertion-nom-défibir
saisis report et dans fait référence à:
=$N$2:$N$6000
(ca peut être un autre chiffre que 6000 ecrit par prudence mais >4002 (ton info + haut)
pour "recao"
oui il faut que tu recopies les macros dans VBE (alt+ F11) et insère les Modules (insertion module) peu importe leurs noms...
si le fichier ne s'appelle pas dans le réel "synthèses", inscrit le vrai nom à cet endroit
Option Explicit
Const source As String = "levrainom.xls"
il faut mettre une page de garde en premier et uniquement les feuillets fournisseurs. si tu veux des feuillets fournisseurs de réserve,il faut inscrire un numéro fournisseur inexistant (genre 999999999 si les numéros réels sont des nombres ou genre AA45rrr si les identifiants réels comportent une ou plusieurs lettres)
Pour le bouton déclencheurs construis le avec la barre d'outils formulaire, ce sera plus simple... macro à appeler:
collecter_sap
je repasserai dans l'après-midi mais c'hai pas quand !
bon courage quand m^me
dans le fichier "synthèse" il faut absolument retrouver ce que j'ai écrit ligne 2
pour "report"
insertion-nom-défibir
saisis report et dans fait référence à:
=$N$2:$N$6000
(ca peut être un autre chiffre que 6000 ecrit par prudence mais >4002 (ton info + haut)
pour "recao"
oui il faut que tu recopies les macros dans VBE (alt+ F11) et insère les Modules (insertion module) peu importe leurs noms...
si le fichier ne s'appelle pas dans le réel "synthèses", inscrit le vrai nom à cet endroit
Option Explicit
Const source As String = "levrainom.xls"
il faut mettre une page de garde en premier et uniquement les feuillets fournisseurs. si tu veux des feuillets fournisseurs de réserve,il faut inscrire un numéro fournisseur inexistant (genre 999999999 si les numéros réels sont des nombres ou genre AA45rrr si les identifiants réels comportent une ou plusieurs lettres)
Pour le bouton déclencheurs construis le avec la barre d'outils formulaire, ce sera plus simple... macro à appeler:
collecter_sap
je repasserai dans l'après-midi mais c'hai pas quand !
bon courage quand m^me
J'ai fait les modif de mes fichiers, j'ai mis une nouvelle page sur le fichier recap avec un bouton etc, mais quand je lance la macro j'ai une erreur de compilation "Sub ou Fonction non définie" sur "If FichOuvert(fich) Then" : a quoi cela peut être du ?
Pourtant j'ai bien mis les deux fichiers dans le meme sous dossier. J'ai essayer en ouvrant l'autre ou en le fermant, ca ne change rien...
Pourtant j'ai bien mis les deux fichiers dans le meme sous dossier. J'ai essayer en ouvrant l'autre ou en le fermant, ca ne change rien...
Tu as du oublier de recopier la macro se trouvant dans le module "fonctionss"
tu peux la coller à la suite dans le m^me module que les 2 macros "collecter' et "extraire"
si tu travailles sur les fichiers réels fait une copie des originaux "au cas où"
voici la macro, tu peux la copier-coller:
tu peux la coller à la suite dans le m^me module que les 2 macros "collecter' et "extraire"
si tu travailles sur les fichiers réels fait une copie des originaux "au cas où"
voici la macro, tu peux la copier-coller:
Option Explicit Function FichOuvert(F As String) As Boolean 'Auteur: Didier_mdf (merci) site: http://www.mdf-xlpages.com/ Dim Wk As Workbook On Error Resume Next Set Wk = Workbooks(F) On Error GoTo 0 FichOuvert = Not Wk Is Nothing End Function
Maintenant j'ai un autre souci (c'est pas évident dis donc VBA !! ^^ )
J'ai un message d'erreur qui me dit que Microsoft jet n'a pas pu trouver l'objet "report".
Quand je clique sur debogage j'ai la ligne " Set requete = connex.Execute(texte_SQL)" surlignée
Pourtant j'ai bien inserer le nom report dans le fichier de synthese...
J'ai un message d'erreur qui me dit que Microsoft jet n'a pas pu trouver l'objet "report".
Quand je clique sur debogage j'ai la ligne " Set requete = connex.Execute(texte_SQL)" surlignée
Pourtant j'ai bien inserer le nom report dans le fichier de synthese...
le langage SQL (utilisé ici avec VBA est très puissant) et rapide mais est très pointilleux voire super-ch...
envoie-moi les fichiers réeels "synthèse" (quelque lignes) et " recap" en .zip (je n'ai pas .rar) sur
http://www.cijoint.fr/
(cijoint est moins limité en taille!)
Si ca craint pour la confidentialité envoie le moi (exceptionnelement) en message perso après t'être inscrite comme membre
envoie-moi les fichiers réeels "synthèse" (quelque lignes) et " recap" en .zip (je n'ai pas .rar) sur
http://www.cijoint.fr/
(cijoint est moins limité en taille!)
Si ca craint pour la confidentialité envoie le moi (exceptionnelement) en message perso après t'être inscrite comme membre
Bonjour,
Un truc auquel j'ai pensé avant d'envoyer toute l'aafffaire !!!
dans le fichier synthèse, tu supprimes "report"
tu refais "report" en sélectionnant avec la souris une zone B2:N10 (ou N6 ou N4)
tu dois avoir
=Feuil1!$B$2:$N$10
feuil1! étant le nom de l'onglet chez moi...
tu le transformes en
=Feuil1!$B$2:$N$6000
ajouter
tu vérifies que report va bien jusqu'à 6000
tu dis...
Un truc auquel j'ai pensé avant d'envoyer toute l'aafffaire !!!
dans le fichier synthèse, tu supprimes "report"
tu refais "report" en sélectionnant avec la souris une zone B2:N10 (ou N6 ou N4)
tu dois avoir
=Feuil1!$B$2:$N$10
feuil1! étant le nom de l'onglet chez moi...
tu le transformes en
=Feuil1!$B$2:$N$6000
ajouter
tu vérifies que report va bien jusqu'à 6000
tu dis...