Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL pour MAC report des lignes d'un tableau dans un autre en fonction du contenu de cellule

pilou010

XLDnaute Occasionnel
Bonsoir,
Dans un tableau sur la feuille 1 je suis les opérations de mon compte bancaire.
Afin de suivre les remboursements des visites médicales, j'ai un autre tableau sur la feuille 2.

Est-il possible que lorsque je saisis dans le tableau 1, médecin, dentiste, spécialiste ou autres, les lignes soient automatiquement insérer dans le tableau de la feuille 2 ?

Peut-être, je ne suis pas très clair dans ma demande alors je joins un fichier exemple.

Merci de votre aide

Pilou
 

Pièces jointes

  • Classeur1.xlsx
    18 KB · Affichages: 2
Solution
Bonsoir pilou010,

Dans la feuille "Relevés" voyez le tableau structuré Tableau1 avec la liste des Rubriques à récupérer.

Dans la feuille "Soins" formule matricielle en A2 :
VB:
=SIERREUR(INDEX(Relevés!A:A;PETITE.VALEUR(SI(NB.SI(Tableau1[Rubrique];SOINS[Rubrique]);LIGNE(SOINS[Rubrique]));LIGNE(A1)));"")
à valider par Ctrl+Maj+Entrée et propager à droite et vers le bas.

Bonne nuit.

job75

XLDnaute Barbatruc
Bonsoir pilou010,

Dans la feuille "Relevés" voyez le tableau structuré Tableau1 avec la liste des Rubriques à récupérer.

Dans la feuille "Soins" formule matricielle en A2 :
VB:
=SIERREUR(INDEX(Relevés!A:A;PETITE.VALEUR(SI(NB.SI(Tableau1[Rubrique];SOINS[Rubrique]);LIGNE(SOINS[Rubrique]));LIGNE(A1)));"")
à valider par Ctrl+Maj+Entrée et propager à droite et vers le bas.

Bonne nuit.
 

Pièces jointes

  • Classeur1.xlsx
    19.7 KB · Affichages: 5

pilou010

XLDnaute Occasionnel
Bonjour,
Je suis désolé mais je relance cette discussion.
En essayant de comprendre pour reproduire la formule, je fais un fichier Excel à l'identique, noms des tableau, des onglets, des entêtes de colonnes.
J'applique ensuite la formule matricielle et propage à droite et en bas.
Si les résultats s'affiche bien dans la colonne date rien ne se passe sur les autres ligne et colonnes ???
Je vérifie encore et encore, tout me semble identique mais cela ne fonctionne pas...

Quelqu'un aurait-il la gentillesse de jeter un œil au fichier pour identifier mon erreur ?

Merci par avance
 

Pièces jointes

  • Pilou2.xlsx
    19.6 KB · Affichages: 3

goube

XLDnaute Accro
Bonsoir,
Il ne faut pas propager mais copier coller formule ce qui évite le changement de critères
Colonne Rubrique SOINS[Libellé] au lieu de SOINS[Rubrique]
Colonne Libellé SOINS[Crédit] au lieu de SOINS[Rubrique]
etc...
Cordialement
 

job75

XLDnaute Barbatruc
Bonjour pilou010, goube,

Mais si il faut propager la formule qui se trouve en A2.

Dans les colonnes B C D E les formules étaient erronées.

Il faut qu'il y ait l'expression LIGNE(SOINS[Rubrique]).

Tirez A2 vers la droite et le bas puis mettez les colonnes B:E au format Standard.

A+
 

Pièces jointes

  • Pilou2.xlsx
    19.6 KB · Affichages: 5

job75

XLDnaute Barbatruc
Notre ami est sur MAC, c'est peut-être la raison de la mauvaise propagation.

Chez moi sur Win 11 Excel 2019 j'ai fait comme indiqué au post #6.

Au lieu de tirer A2 on peut aussi faire un Collage spécial-Formules.
 

pilou010

XLDnaute Occasionnel
Eh ben j'étais pas prêt de trouvé ! ! !
Heureusement que ce forum existe et qu'il y a des personnes au top, serviables et réactives+++.
J'ai fait un copier + collage spécial => formules et CA FONCTIONNE
Vous êtes trop forts ! MERCI
 

Cousinhub

XLDnaute Barbatruc
Inactif
Bonsoir,
Une recopie incrémentée d'une formule ayant comme argument un Tableau Structuré (ou une de ses colonnes), si elle fonctionne parfaitement vers le bas, vers la droite (ou la gauche) pose souvent des pb si on veut la référencer en absolue...
Perso, le seul moyen que j'ai trouvé, c'est de la borner via Indirect
Si quelqu'un connaît un autre moyen, je suis bien sûr preneur...
Code:
INDIRECT("Tableau1[colonne_absolue]")
Bonne soirée
 

job75

XLDnaute Barbatruc
Bonsoir Cousinhub,

Pour être sûr de ne pas incrémenter les colonnes d'un tableau structuré il suffit de les doubler :
Code:
SOINS[[Rubrique]:[Rubrique]]
Au contraire pour être sûr d'incrémenter il suffit d'utiliser les références relatives :
Code:
Relevés!A:A
Voici la bonne formule en A2 :
Code:
=SIERREUR(INDEX(Relevés!A:A;PETITE.VALEUR(SI(NB.SI(Tableau1;SOINS[[Rubrique]:[Rubrique]]);LIGNE(SOINS[[Rubrique]:[Rubrique]]));LIGNE(A1)));"")
A+
 

Pièces jointes

  • Pilou2.xlsx
    19.5 KB · Affichages: 3

Cousinhub

XLDnaute Barbatruc
Inactif
Bonjour,
Merci Job pour cette façon d'opérer.
Je ne sais laquelle je vais utiliser (ou continuer à utiliser), les 2 étant fonctionnelles, et somme toute assez proches en terme de caractères et/ou de facilité à écrire.
Merci encore, et bon W-E
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…