Extraire plusieurs entêtes de colonnes

Résolu
Lalmax -  
 Lalmax -
Bonjour,


J'ai actuellement un tableau assez important reprenant des entreprises à visiter.
colonne A = les entreprises (530 lignes actuellement)
colonne B = l'année du prochain contrôle
colonne C à AX (pour l'instant) = le type de contrôle à effectuer.

Un type de contrôle particulier par colonne. Plusieurs contrôles à effectuer par entreprise par année mais pas tous!

ex:
entreprise / année du prochain contrôle / testA / testB / testC / testD
Tartempion / 2013 / 2014 / 2013 / - / 2013

en fait la colonne B reprend juste une formule qui affiche la plus petite année introduite dans les colonnes C à AX.

J'aimerais ajouter une colonne avec une formule qui m'indiquerait pour chaque ligne les types de contrôles à effectuer pendant 'l'année du prochain contrôle' (valeur de la colonne B).

En français cela donnerait quelque chose comme :
trouve dans les colonnes C à AX toutes les valeurs identique à 'année du prochain contrôle' et affiche moi les entêtes de leur colonne respectives séparées par ' - '

Cela me permettrait en un coup d'oeil de savoir quels seront les prochains contrôles sans devoir faire toute la ligne et reprendre les entêtes des colonnes une à une.


ex après insertion:
entreprise / année du prochain contrôle / prochain contrôle / testA / testB / testC / testD
Tartempion / 2013 / testB - TestD / 2014 / 2013 / - / 2013



Merci!

3 réponses

PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
Bonjour

Combien de contrôle annuel avez-vous à effectuer ?

Voici une formule pour 4 à 5 contrôles

=SI($C6=$B6;$C$5;" - ")&SI($D6=$B6;$D$5;" - ")&SI($E6=$B6;$E$5;" - ")

C6 = année 1er contrôle comparer à B6 et renvoie C5 l'en tête de la première colonne
D6 = année 2ème contrôle comparer à B6 et renvoie D5 en tête de colonne de la 2éme colonne
E6 = année 3ème contrôle comparer à B6 et renvoie E5 en tête de colonne de la 3ème colonne
et ainsi de suite jusqu'à 7 conditions Si
1
Lalmax
 
Je devrais avoir une 50ène de contrôles différents au final. Ca pose un problème au-delà de 7 conditions?
0
PHILOU10120 Messages postés 6445 Date d'inscription   Statut Contributeur Dernière intervention   824
 
50 Contrôles chez un même client, cela ne va pas aller, il faut une autre solution
0
pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour tout le monde, Mike,

Une solution par fonction personnalisée VBA made by Mr Boisgontier :ICI
Depuis la feuille de calcul tapez ALT+F11, puis Insertion/Module, copiez collez le code ci dessous et refermez la fenêtre Visual Basic Editor.
Le code :
Function RechTous(v, champRech As Range, ChampRetour As Range, separateur)
  a = champRech
  temp = ""
  For i = 1 To champRech.Count
    If a(i, 1) = v Then
        temp = temp & ChampRetour(i) & separateur
    End If
  Next i
  RechTous = Left(temp, Len(temp) - 1)
End Function 

Pour l'application, dans la cellule C2 (par exemple) inscrire la formule :
=RechTous(B2;D2:AY2;$D$1:$AY$1;" - ")
1
Lalmax
 
Ca marche du tonnerre!
Une seule adaptation, la formule étant encodée pour de la recherche en colonne et pas en ligne. J'ai donc remplacé :
If a(i,1) par If a(1,i)

Merci en tout cas!
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Salut,

Le nombre de conditionnelle n'a jamais été un problème sur Excel
voir ici l'astuce que j'ai déposé
mais il existe d'autres possibilités pour contourner le nombre d'imbrication pas toujours facile à gérer.
le mieux serait de déposer un exemple de fichier sur lequel nous pourrions travailler dessus
à joindre avec ce lien

https://www.cjoint.com/
0