Récupérer info dans fichier excel

NicoB -  
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour,

Je souhaite faire un tests de type :
=SI(OngletX!C6="GRP_recup";OngletX!A6";"")
Mais sur plusieurs lignes et le résultat de chaque ligne serais répertorié dans une seule cellule séparé par des points virgules.

Pouvez vous me donner un coup de main ?
Merci

A voir également:

4 réponses

melanie1324 Messages postés 1561 Statut Membre 156
 
bonjour,

voici comment écrire ta formule :

=SI(nomfeuille!C6="GRP_recup";nomfeuille!A6;"")

nomfeuille étant le nom de ta feuille si j e la remplaces par un nom de feuille = X :
=SI(X!C6="GRP_recup";X!A6;"")

si ton nom de feuilles est OngletX :
=SI(OngletX!C6="GRP_recup";OngletX!A6;"")
0
Raymond PENTIER Messages postés 71849 Date d'inscription   Statut Contributeur Dernière intervention   17 386
 
Tu n'as répondu qu'à la moitié (la plus facile) de la question ...
0
Raymond PENTIER Messages postés 71849 Date d'inscription   Statut Contributeur Dernière intervention   17 386
 
Bonjour NicoB.
Tu as évalué le nombre de caractères qui risquent de se retrouver dans ta cellule unique ? Au-delà de 255 tu auras des problèmes ...
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 281
 
Bonjour tout le monde,

exemple pour 2 cellules :
=SI(OngletX!C6="GRP_recup";OngletX!A6;"") & ";" & SI(OngletX!C7="GRP_recup";OngletX!A7;"")

eric
0
NicoB
 
Merci de vos nombreuses réponses. Eric ta formule est correct mais je le faire sur des milliers de cellules et après avoir parcouru de nombreux forum, je me suis aperçu que je n'avais pas d'autres choix que de créer une fonction à l'aide d'une macro (ce que je ne voulais surtout pas faire). Cette macro m'aurait permis de faire une recherche sur un mot clé et dès qu'elle l'aurais trouvé m'aurais renvoyé la valeur de la colonne à côté le tout en continuant la recherche sur les lignes qui suivent.
Je vous remercie d'avoir passé du temps pour moi, bonne continuation.
0
eriiic Messages postés 25847 Date d'inscription   Statut Contributeur Dernière intervention   7 281
 
Tu décris incomplètement ton problème...
Si ça t'intéresse une fonction que j'avais réalisé pour concaténer les cellules d'une plage avec choix du séparateur :
Function ConcatPlage(plage As Variant, separateur As String) As String
    Dim c As Range
    Dim rep As String
    For Each c In plage
        rep = rep & separateur & c.Value
    Next c
    ConcatPlage = Mid(rep, Len(separateur) + 1)
End Function

Tu peux mixer cellules individuelle et plages à condition d'encadrer par des ( ),
ex: =ConcatPlage((A2;A4;A6:A7);" ")
http://www.cijoint.fr/cjlink.php?file=cj201107/cijrNJ8HJv.xls

eric
0