Formule matricielle pour afficher les catégories d'un tableau

etoc

XLDnaute Nouveau
Bonjour,

Je galère à essayer de transformer du bidouillage en formule matricielle; je m'explique.

J'ai un tableau:

Code:
......................Colonne 1........Colonne 2..................Synthèse
A.........................X ................X....................."Colonne 1    Colonne 2"
B...........................................X....................."Colonne 2 "



Donc la colonne synthèse, l'objectif est de faire une mise a jour automatique, via formule matricielle.
A ce jour j'ai une formule qui test SI il existe une "X" dans la colonne pour la ligne concernée et si oui, concatène les résultats pour afficher les entetes de colonnes.
Du genre
=CONCATENER(
SI(feuil!C7<>"";feuil!$D$3&" ";"");
SI(feuil!D7<>"";feuil!$E$3&" ";"");
SI(feuil!E7<>"";feuil!$F$3&" ";"");
SI(feuil!F7<>"";feuil!$G$3&" ";"");
)


Donc ca c'est tout a fait du bricolage, pour quelques colonnes, mais si je commence a avoir beaucoup de colonne, c'est pas gerable... est-ce que vous auriez des pistes en utilisant des automations avec des matricielles?
Sachant que cela fait longtemps que je n'ai plus réellement toucher à du excel... alors que je savais faire pas mal de chose... mais la, ca ne me revient pas du tout...


En vous remerciant d'avance, pour toute idée, ou coup de pouce :)



PS: j'ai ajouté le fichier d'exemple en PJ.
L'objectif est de remplacer la formule colonne "synthèse" par une formule matricielle, moins contraignante si j'ajoute des colonnes...
 

Pièces jointes

  • Plan.xls
    48.5 KB · Affichages: 46
  • Plan.xls
    48.5 KB · Affichages: 50
  • Plan.xls
    48.5 KB · Affichages: 52
Dernière édition:

CISCO

XLDnaute Barbatruc
Re : Formule matricielle pour afficher les catégories d'un tableau

Bonjour

Si tu peux charger les fonctions proposer par Morefunc sur le net, tu peux faire avec la fonction MCONCAT comme suit :
Code:
=MCONCAT(SI(D4:T4="X";D$3:T$3&"  ";"");"")
en matriciel.

Sinon, je chercherai une autre solution.

@ plus

P.S : D'après ce que j'ai lu, ces fonctions complémentaires ne passent pas sous Excel 2010. Perso, comme je travaille avec Excel 2007...
 

Pièces jointes

  • Plan.xls
    56 KB · Affichages: 47
  • Plan.xls
    56 KB · Affichages: 54
  • Plan.xls
    56 KB · Affichages: 49

etoc

XLDnaute Nouveau
Re : Formule matricielle pour afficher les catégories d'un tableau

OK... merci pour ta réponse!
Et effectivement, je n'ai pas moyen de charger ces fonctions... a part le matriciel... une autre idée, c'est a dire? tu as une piste?

En te remerciant,
 

CISCO

XLDnaute Barbatruc
Re : Formule matricielle pour afficher les catégories d'un tableau

REbonjour

Et non, je ne vois pas de formule plus pratique que la tienne, sans passer par MCONCAT. Avec des SUBSTITUE, c'est aussi compliqué. Peut être avec EVALUER, mais pour le moment, je ne trouve pas.

@ plus
 

tototiti2008

XLDnaute Barbatruc
Re : Formule matricielle pour afficher les catégories d'un tableau

Bonjour etoc, Bonjour CISCO :),

Sans VBA je ne vois pas non plus

à mettre dans un module

Code:
Function MConcatPasVide(PlageTest As Range, PlageConcat As Range, Sep As String) As String
Dim i As Long
    MConcatPasVide = ""
    For i = 1 To PlageTest.Cells.Count
        If PlageTest(i).Value <> "" Then
            MConcatPasVide = MConcatPasVide & PlageConcat(i).Value & Sep
        End If
    Next i
    If Len(MConcatPasVide) > 0 Then MConcatPasVide = Left(MConcatPasVide, Len(MConcatPasVide) - 1)
End Function

puis en C4

Code:
=mconcatpasvide(D4:T4;$D$3:$T$3;" ")

à recopier vers le bas
 

Discussions similaires

Réponses
4
Affichages
218

Statistiques des forums

Discussions
312 357
Messages
2 087 578
Membres
103 598
dernier inscrit
f-laurent