Macro pour récupérer les infos d'une personne
Fermé
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
-
20 août 2014 à 10:09
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 27 août 2014 à 09:45
gbinforme Messages postés 14946 Date d'inscription lundi 18 octobre 2004 Statut Contributeur Dernière intervention 24 juin 2020 - 27 août 2014 à 09:45
A voir également:
- Macro pour récupérer les infos d'une personne
- Comment récupérer les messages supprimés sur whatsapp - Guide
- Recuperer video youtube - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Comment récupérer un compte facebook piraté - Guide
- Macro word - Guide
17 réponses
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
20 août 2014 à 10:13
20 août 2014 à 10:13
Bonjour,
Si tu pouvais nous mettre un exemple de structure des données, sans éléments personnels, avec les résultats souhaités expliqués clairement, se serait plus facile de t'aider.
Pour communiquer ton classeur tu le télécharges sur https://www.cjoint.com/ et tu mets ici le lien obtenu.
Si tu pouvais nous mettre un exemple de structure des données, sans éléments personnels, avec les résultats souhaités expliqués clairement, se serait plus facile de t'aider.
Pour communiquer ton classeur tu le télécharges sur https://www.cjoint.com/ et tu mets ici le lien obtenu.
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
Modifié par djnitro95 le 20/08/2014 à 11:11
Modifié par djnitro95 le 20/08/2014 à 11:11
j'ai mis le fichier source et le fichier b.
https://www.cjoint.com/?0Huk5ULAnum
Il faut savoir que dans l'exemple le fichier source et le fichier contiennent tous les deux le même nombre de personnes alors que la plupart du temps je n'aurais pas tous le monde de présent dans le fichier source.
J'ai oublier de dire que les infos à récupérer dans le fichiers source d'exemple sont de E8 à E13 et de D19 à D24
https://www.cjoint.com/?0Huk5ULAnum
Il faut savoir que dans l'exemple le fichier source et le fichier contiennent tous les deux le même nombre de personnes alors que la plupart du temps je n'aurais pas tous le monde de présent dans le fichier source.
J'ai oublier de dire que les infos à récupérer dans le fichiers source d'exemple sont de E8 à E13 et de D19 à D24
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
20 août 2014 à 12:14
20 août 2014 à 12:14
Bonjour,
Ton fichier source n'est pas un fichier csv comme dans la demande et le traite ment ne sera pas le même : que doit-on prendre en compte ?
D'autre part tes plages paraissent erronées : E8 à E13 est vide et D19 à D24 représente une moyenne !
Ton fichier source n'est pas un fichier csv comme dans la demande et le traite ment ne sera pas le même : que doit-on prendre en compte ?
D'autre part tes plages paraissent erronées : E8 à E13 est vide et D19 à D24 représente une moyenne !
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
20 août 2014 à 14:04
20 août 2014 à 14:04
Je l'ai enregistrer au format xls et je pense qu'il restera sous ce format au final.
Concernant les plages E8 à E13 contient des données, des 0 mais j'en ai besoin aussi :).
Pour D19 à à D24 oui c'est une moyenne en secondes, mais j'ai juste besoin de récupérer la valeur brute.
Concernant les plages E8 à E13 contient des données, des 0 mais j'en ai besoin aussi :).
Pour D19 à à D24 oui c'est une moyenne en secondes, mais j'ai juste besoin de récupérer la valeur brute.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
20 août 2014 à 22:50
20 août 2014 à 22:50
Bonjour,
Je l'ai enregistrer au format xls : en fait c'est .xlsx et j'ai pris en compte ce format.
Voici ton classeur en xlsm en raison des macros :
https://www.cjoint.com/?DHuwUfbymiV
Le bouton bleu permet de choisir le classeur à intégrer.
Attention, ton classeur est fait pour juillet et tu veux insérer un fichier d'août, cela ne fonctionnera pas car la date n'est pas correcte.
Je l'ai enregistrer au format xls : en fait c'est .xlsx et j'ai pris en compte ce format.
Voici ton classeur en xlsm en raison des macros :
https://www.cjoint.com/?DHuwUfbymiV
Le bouton bleu permet de choisir le classeur à intégrer.
Attention, ton classeur est fait pour juillet et tu veux insérer un fichier d'août, cela ne fonctionnera pas car la date n'est pas correcte.
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
21 août 2014 à 08:32
21 août 2014 à 08:32
Bonjour GB,
Merci beaucoup c'est super top, cependant j'ai une erreur lorsque je met les noms officiels: erreur d'exécution 9, l'indice n'appartient pas à la sélection.
J'ai d'autres questions concernant la macro, si je souhaite importer de nouvelles données se trouvant soit dans le fichier source existant soit dans un second fichier source de même date mais avec des données différentes, est ce possible ?
Je t'avoue que mon fichier final est beaucoup plus lourd que ca et pensais pouvoir continuer seul grâce aux premières bases, mais la en relisant ta macro j'ai du mal à m'y retrouver.
Merci beaucoup c'est super top, cependant j'ai une erreur lorsque je met les noms officiels: erreur d'exécution 9, l'indice n'appartient pas à la sélection.
J'ai d'autres questions concernant la macro, si je souhaite importer de nouvelles données se trouvant soit dans le fichier source existant soit dans un second fichier source de même date mais avec des données différentes, est ce possible ?
Je t'avoue que mon fichier final est beaucoup plus lourd que ca et pensais pouvoir continuer seul grâce aux premières bases, mais la en relisant ta macro j'ai du mal à m'y retrouver.
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
21 août 2014 à 08:42
21 août 2014 à 08:42
Bonjour,
j'ai une erreur lorsque je met les noms officiels ce n'est pas les changements de noms qui provoquent cela mais probablement les onglets, il faudrait que tu fournisses la ligne impactée.
dans un second fichier source de même date mais avec des données différentes : pas de problème mais si tu as le même nom avec des données différentes la seconde sera mise sinon il faut cumuler.
j'ai du mal à m'y retrouver. : chacun a sa logique et ce n'est pas toujours facile de se fondre dans celle des autres même si j'ai essayé de te faire une procédure basique.
j'ai une erreur lorsque je met les noms officiels ce n'est pas les changements de noms qui provoquent cela mais probablement les onglets, il faudrait que tu fournisses la ligne impactée.
dans un second fichier source de même date mais avec des données différentes : pas de problème mais si tu as le même nom avec des données différentes la seconde sera mise sinon il faut cumuler.
j'ai du mal à m'y retrouver. : chacun a sa logique et ce n'est pas toujours facile de se fondre dans celle des autres même si j'ai essayé de te faire une procédure basique.
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
21 août 2014 à 09:14
21 août 2014 à 09:14
ce n'est pas les changements de noms qui provoquent cela mais probablement les onglets, il faudrait que tu fournisses la ligne impactée.
Je ne connais pas le numéro de la ligne, il ne me donne pas l'info.
pas de problème mais si tu as le même nom avec des données différentes la seconde sera mise sinon il faut cumuler.
Je pense que je vais nommer les fichiers comme ceci : 2014-07-01_appels.xlsx et 2014-07-01_mails.xlsx
Je ne connais pas le numéro de la ligne, il ne me donne pas l'info.
pas de problème mais si tu as le même nom avec des données différentes la seconde sera mise sinon il faut cumuler.
Je pense que je vais nommer les fichiers comme ceci : 2014-07-01_appels.xlsx et 2014-07-01_mails.xlsx
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
21 août 2014 à 09:37
21 août 2014 à 09:37
oups, dans le deboquage c'est ça qui est surligné: If Cells(lig, 1).Value = tbn(niv) Then
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
21 août 2014 à 10:19
21 août 2014 à 10:19
Bonjour,
je vais nommer les fichiers comme ceci
Dans ce cas il faut changer le code dans cette ligne :
dans le deboquage c'est ça qui est surligné
C'est que tu as plus de 2 tableaux dans ton fichier à intégrer.
je vais nommer les fichiers comme ceci
Dans ce cas il faut changer le code dans cette ligne :
dat = DateValue(Mid(fic, InStrRev(fic, "") + 1, InStrRev(fic, "_") - InStrRev(fic, "") - 1))
dans le deboquage c'est ça qui est surligné
C'est que tu as plus de 2 tableaux dans ton fichier à intégrer.
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
21 août 2014 à 10:47
21 août 2014 à 10:47
C'est que tu as plus de 2 tableaux dans ton fichier à intégrer.
C'est exact, j'en ai 4, j'avais alléger pour te faciliter la tache car les 2 suivants ne sont pas utiles.
Dans ce cas il faut changer le code dans cette ligne :
dat = DateValue(Mid(fic, InStrRev(fic, "") + 1, InStrRev(fic, "_") - InStrRev(fic, "") - 1))
Il suffit de remplacer la ligne et c'est tout, je rajoute ensuite un nouveau tableau pour réceptionner les données ?
C'est exact, j'en ai 4, j'avais alléger pour te faciliter la tache car les 2 suivants ne sont pas utiles.
Dans ce cas il faut changer le code dans cette ligne :
dat = DateValue(Mid(fic, InStrRev(fic, "") + 1, InStrRev(fic, "_") - InStrRev(fic, "") - 1))
Il suffit de remplacer la ligne et c'est tout, je rajoute ensuite un nouveau tableau pour réceptionner les données ?
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
21 août 2014 à 21:53
21 août 2014 à 21:53
Bonjour,
Voici la macro modifiée pour supporter + de 2 tableaux dans le fichier à intégrer et la nouvelle syntaxe de tes noms :
https://www.cjoint.com/?DHvvYFr9YSB
Voici la macro modifiée pour supporter + de 2 tableaux dans le fichier à intégrer et la nouvelle syntaxe de tes noms :
https://www.cjoint.com/?DHvvYFr9YSB
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
22 août 2014 à 09:16
22 août 2014 à 09:16
Bonjour,
C'est super, merci beaucoup ça fonctionne à merveille.
Peux tu stp m'expliquer comment faire si je souhaite ajouter un tableau dans le fichier b et donc venir chercher des infos dans le fichier source.
Cela doit se passer ici :
Concernant le fait d'avoir un second fichier source comment dire à la macro ou aller chercher les infos (cela ressemble à la première question)
Tu ne m'a pas dit sil il était possible de faire un import multiple avec l'ensemble des xls d'un dossier, est ce possible selon toi?
C'est super, merci beaucoup ça fonctionne à merveille.
Peux tu stp m'expliquer comment faire si je souhaite ajouter un tableau dans le fichier b et donc venir chercher des infos dans le fichier source.
Cela doit se passer ici :
tbc = Array(0, 3, 4, 0, 0, 0, 0)J'ai compris que tbc était les colonnes ou aller chercher les infos mais pas compris la distinction entre les tableaux 1,2,3 ou 4.
tbn = Array(0, "Entrant", "Sortant", 0, 0, 0, 0)
Concernant le fait d'avoir un second fichier source comment dire à la macro ou aller chercher les infos (cela ressemble à la première question)
Tu ne m'a pas dit sil il était possible de faire un import multiple avec l'ensemble des xls d'un dossier, est ce possible selon toi?
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
22 août 2014 à 22:03
22 août 2014 à 22:03
Bonjour,
faire un import multiple avec l'ensemble des xls
ajouter un tableau dans le fichier b
C'est possible et je t'ai rajouté dans la macro les 2 fonctions.
- C'est le répertoire qui est choisi et non le fichier : tous les classeurs qui comportent une date "aaaa-mm-jj" sont pris en compte.
- Le tableau est identifié dans 'tbn' par son libellé en colonne A et la colonne récupérée par 'tbc' comme tu avais vu.
https://www.cjoint.com/?DHwv0RqyfYb
Bon test
faire un import multiple avec l'ensemble des xls
ajouter un tableau dans le fichier b
C'est possible et je t'ai rajouté dans la macro les 2 fonctions.
- C'est le répertoire qui est choisi et non le fichier : tous les classeurs qui comportent une date "aaaa-mm-jj" sont pris en compte.
- Le tableau est identifié dans 'tbn' par son libellé en colonne A et la colonne récupérée par 'tbc' comme tu avais vu.
https://www.cjoint.com/?DHwv0RqyfYb
Bon test
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
25 août 2014 à 09:19
25 août 2014 à 09:19
Bonjour,
Merci beaucoup c'est top.
Le traitement du premier fichier (appels.xlsx) fonctionne à merveille.
Je n'arrive cependant pas à intégrer les datas du deuxième fichier (mails.xlsx)
peux tu stp me dire à quel moment dans la macro tu passe au deuxième fichier ?
voici l'état de la macro après mes modifs:
Fichier appels.xlsx = 4 tableaux et je viens chercher des datas uniquement dans les 3 premiers.
Fichiers mails.xlsx = 4 tableaux et je voudrais récupérer des datas dans les tableaux 1 et 2.
est ce que ce que je fait ci-dessous devrait marcher car ca ne donne rien, pas d'erreur mais pas de dats non plus.
Merci beaucoup c'est top.
Le traitement du premier fichier (appels.xlsx) fonctionne à merveille.
Je n'arrive cependant pas à intégrer les datas du deuxième fichier (mails.xlsx)
peux tu stp me dire à quel moment dans la macro tu passe au deuxième fichier ?
voici l'état de la macro après mes modifs:
Fichier appels.xlsx = 4 tableaux et je viens chercher des datas uniquement dans les 3 premiers.
Fichiers mails.xlsx = 4 tableaux et je voudrais récupérer des datas dans les tableaux 1 et 2.
est ce que ce que je fait ci-dessous devrait marcher car ca ne donne rien, pas d'erreur mais pas de dats non plus.
tbc = Array(0, 3, 4, 2, 0, 0, 2)
tbn = Array(0, "Entrant", "Moy. comm.", "Sortant", 0, 0, "Mails traités")
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
25 août 2014 à 21:36
25 août 2014 à 21:36
Bonsoir,
ce serait bien que tu donnes un exemple de tes 2 fichiers pour pouvoir adapter.
ce serait bien que tu donnes un exemple de tes 2 fichiers pour pouvoir adapter.
djnitro95
Messages postés
24
Date d'inscription
mercredi 18 novembre 2009
Statut
Membre
Dernière intervention
10 février 2016
26 août 2014 à 11:33
26 août 2014 à 11:33
Bonjour,
Voici un zip, j'ai mis des codes couleurs pour mieux se repérer par rapport à ce que je souhaite récupérer.
https://www.cjoint.com/c/DHAlGYeLo3Q
Voici un zip, j'ai mis des codes couleurs pour mieux se repérer par rapport à ce que je souhaite récupérer.
https://www.cjoint.com/c/DHAlGYeLo3Q
gbinforme
Messages postés
14946
Date d'inscription
lundi 18 octobre 2004
Statut
Contributeur
Dernière intervention
24 juin 2020
4 711
27 août 2014 à 09:45
27 août 2014 à 09:45
Bonjour,
Merci pour tes classeurs exemple bien conçus.
Sur le classeur de regroupement, j'ai mis les mêmes noms de tableaux (colonne A) que dans tes classeurs détails : c'est ainsi que l'on se repère et les noms doivent être identiques à ceux de 'tbn'.
Tu as changé la casse d'un nom (E) et donc je prend n'importe quelle casse sur les noms comme dans une recherche excel.
Tous les classeurs du répertoire choisi sont intégrés quel que soit leur type appels ou mails, sur les tableaux définis et tu peux définir d'autres tableaux en rajoutant des éléments dans les paramètres 'tbc' et 'tbn' concordants.
Ton classeur "b" : https://www.cjoint.com/?DHBjRkqdoP8
Bons tests.
Merci pour tes classeurs exemple bien conçus.
Sur le classeur de regroupement, j'ai mis les mêmes noms de tableaux (colonne A) que dans tes classeurs détails : c'est ainsi que l'on se repère et les noms doivent être identiques à ceux de 'tbn'.
Tu as changé la casse d'un nom (E) et donc je prend n'importe quelle casse sur les noms comme dans une recherche excel.
Tous les classeurs du répertoire choisi sont intégrés quel que soit leur type appels ou mails, sur les tableaux définis et tu peux définir d'autres tableaux en rajoutant des éléments dans les paramètres 'tbc' et 'tbn' concordants.
Ton classeur "b" : https://www.cjoint.com/?DHBjRkqdoP8
Bons tests.