concatener si

  • Initiateur de la discussion boubou
  • Date de début
B

boubou

Guest
salut

voici mon souci:

j'ai deux colonnes et je veut concatener la deuxieme si j'ai la valeur 1 dans la premiere ex:

1 coucou
0 bonjour
1 c'est
d la
hfhg fete
1 moi


resultat attendu : coucou c'est moi

j'arrive à concatener la deuxieme colonne par une fonction en VBA mais je n'arrive pas à y integrer la condition
 
L

Lord Nelson

Guest
Salut Boubou,

Ta question est amusante, on peut la résoudre avec une fonction analogue à SOMME.SI :

Function CONCAT_SI(R1 As Range, Rech As Range, R2 As Range)
Dim CL As Range
Dim CHN As String
For Each CL In R1
If CL.Value = Rech.Value Then
CHN = CHN & " " & Cells(CL.Row, R2.Column).Value
End If
Next
CONCAT_SI = Trim(CHN)
End Function

La fonction CONCAT_SI est à placer dans un module.
Elle s'utilise comme ceci dans Excel :

=concat_si(A1:A6;A1;B1:B6)

On cherche la valeur A1 dans la plage A1 à A6 et l'on effectue la concaténation des données de la plage B1 à B6.
(Comme pour SOMME.SI, les plages doivent être symétriques)

A+
LN
 

Discussions similaires

Réponses
5
Affichages
245

Statistiques des forums

Discussions
312 498
Messages
2 088 996
Membres
104 001
dernier inscrit
dessinbecm