Comment créer un tableau en lien avec différentes feuilles?

Fermé
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 - Modifié par petiteféereveuse le 13/09/2016 à 17:38
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 - 22 sept. 2016 à 11:23
Bonjour,

J'ai besoin d'aide.
Je suis en train de référencer des clients (1 client par feuille) et souhaiterais établir un tableau (dans la toute première feuille de mon fichier) qui reprendrais automatiquement toutes les infos que je saisis dans mes feuilles un à un, est-ce possible ?
Quelles formules dois-je utiliser ?

Pouvez-vous m'aider ?

Afin de mieux pouvoir comprendre, voici le fichier concerné : http://www.cjoint.com/c/FInpKxok7JJ

Merci par avance. =)
A voir également:

4 réponses

Raymond PENTIER Messages postés 58397 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 26 avril 2024 17 094
13 sept. 2016 à 17:51
Bonjour.

Oui, c'est très possible et d'ailleurs très souvent pratiqué ; il suffit d'utiliser la fonction INDIRECT pour cibler la bonne feuille. Simplement tu as oublié le principal : une première colonne avec le nom des clients (donc des feuilles).
Mais si tu veux que la première feuille se mette à jour toute seule quand tu crées une nouvelle feuille client, alors ça change tout : il faut passer en VBA et écrire une macro !
0
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 1
14 sept. 2016 à 10:12
Bonjour,

C'est tout à fait ça, comme énuméré en seconde solution, je souhaite que la première feuille se mette à jour toute seule lorsque je crée une nouvelle feuille client.
Mais comment faire pour passer en VBA et écrire une macro?
Je ne l'ai jamais fait, est-ce possible de m'aiguiller ?


Concernant ma 1ère colonne avec le nom des clients sur mon tableau, elle est indiquée en seconde colonne. Elle est nommé "Société" ;)

Merci par avance. =)
0
cs_Le Pivert Messages postés 7903 Date d'inscription jeudi 13 septembre 2007 Statut Contributeur Dernière intervention 11 mars 2024 728
14 sept. 2016 à 10:49
Bonjour,

Voici un exemple:

http://www.cjoint.com/c/FIoiWrFYDUQ
0
Raymond PENTIER Messages postés 58397 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 26 avril 2024 17 094
15 sept. 2016 à 01:37
Attention : lien non disponible ...
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523
14 sept. 2016 à 11:15
Bonjour,

Voici une proposition avec une macro qui réalise le récapitulatif de toutes les feuilles (à l'exception de la feuille récap).
Cette façon de procéder permet la prise en compte d'une éventuelle modification de fiche.
Le lancement de la procédure est effectué avec un bouton de commande.

https://www.cjoint.com/c/FIojigCM5Y2

Rq : Perso, j'aurais plutôt opté pour une gestion avec une fiche de données regroupant toutes les données clients et une seule fiche client pour la présentation. Les opérations entre ces 2 feuilles pouvant être réalisées avec un Userform. Par contre, cela implique de s'investir dans la programmation VBA.

A+
0
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 1
14 sept. 2016 à 14:27
GÉNIAL !!

Ce document est parfait !

Pouvez-vous m'expliquer comment avez-vous fait ?

Je pourrais ainsi reprendre ce fonctionnement sur d'autre tableaux ! =D
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523 > petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023
14 sept. 2016 à 15:35
Pour voir la macro :
- appuyer sur alt + F11 pour ouvrir l'éditeur,
- appuyer sur ctrl + R pour ouvrir l'explorateur de projets,
- cliquer sur Modules/Module1 pour visualiser le code.

Voici le code commenté :
Sub Recap()
Dim Ws As Worksheet
Dim LigneC As Long
'Première ligne à renseigner dans la feuille récap
LigneC = 4
With Worksheets("RECAP CLIENTS")
'On efface les données de la feuille récap
.Range("A4", .Range("A4").End(xlDown)).EntireRow.ClearContents
'ON balaye chaque feuille du classeur
For Each Ws In Worksheets
'à l'exception de la feuille "RECAP CLIENTS"
If Ws.Name <> .Name Then
'On renseigne les champs
.Range("A" & LigneC).Value = Ws.Range("F7").Value 'Domaine d'activité
.Range("B" & LigneC).Value = Ws.Range("B3").Value 'SOCIÉTÉ
.Range("C" & LigneC).Value = Ws.Range("B10").Value 'CP
.Range("D" & LigneC).Value = Ws.Range("D10").Value 'VILLE
.Range("E" & LigneC).Value = Ws.Range("B12").Value 'TELEPHONE
.Range("F" & LigneC).Value = Ws.Range("D12").Value 'MAIL
'On incrémente la ligne récap
LigneC = LigneC + 1
End If
Next Ws
End With
End Sub

A+
0
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 1
14 sept. 2016 à 16:03
Super !
Merci beaucoup !

Pensez-vous qu'il soit également possible de mettre en place une fonction de façon à pouvoir cliquer sur le nom de la société dans le tableau Recap qui ouvrirait directement la feuille concernée ?
0
Gyrus Messages postés 3334 Date d'inscription samedi 20 juillet 2013 Statut Membre Dernière intervention 9 décembre 2016 523 > petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023
14 sept. 2016 à 16:41
Tu peux utiliser des liens hypertextes :

Sub Recap()
Dim Ws As Worksheet
Dim LigneC As Long
'Première ligne à renseigner dans la feuille récap
LigneC = 4
With Worksheets("RECAP CLIENTS")
'On efface les données de la feuille récap
.Range("A4", .Range("A4").End(xlDown)).EntireRow.ClearContents
'ON balaye chaque feuille du classeur
For Each Ws In Worksheets
'à l'exception de la feuille "RECAP CLIENTS"
If Ws.Name <> .Name Then
'On renseigne les champs
.Range("A" & LigneC).Value = Ws.Range("F7").Value 'Domaine d'activité
.Hyperlinks.Add Anchor:=.Range("B" & LigneC), Address:="", _
SubAddress:=Ws.Name & "!A1", TextToDisplay:=Ws.Range("B3").Value 'SOCIÉTÉ
.Range("C" & LigneC).Value = Ws.Range("B10").Value 'CP
.Range("D" & LigneC).Value = Ws.Range("D10").Value 'VILLE
.Range("E" & LigneC).Value = Ws.Range("B12").Value 'TELEPHONE
.Range("F" & LigneC).Value = Ws.Range("D12").Value 'MAIL
'On incrémente la ligne récap
LigneC = LigneC + 1
End If
Next Ws
End With
End Sub

A+
0
petiteféereveuse Messages postés 42 Date d'inscription lundi 23 septembre 2013 Statut Membre Dernière intervention 10 mai 2023 1
15 sept. 2016 à 15:11
Super !!

Mille merci !!!! =D
0
Raymond PENTIER Messages postés 58397 Date d'inscription lundi 13 août 2007 Statut Contributeur Dernière intervention 26 avril 2024 17 094
17 sept. 2016 à 03:05
Bien !

Si tu veux un peu moins rêver, un peu moins courir après des macros que tu ne maîtriseras pas, et avoir quand même un fichier qui fonctionne, je te conseille vivement de suivre mon conseil du post #1 :
Tu insères en A une colonne avec les noms des clients, donc des feuilles.
Tu saisis en ligne 2 la référence des cellules des feuilles nominatives correspondant aux infos recherchées (ligne où tu pourras mettre la même couleur pour la police et le remplissage)
Tu saisis dans les cellules B4 à G30 la même formule
=SIERREUR(INDIRECT($A4&"!"&$2:$2);"°")
et ton problème est réglé en beauté ...
https://www.cjoint.com/c/FIrbdROWLes

Cordialement.
0