Concaténer des cellules mais exclure les vides dans Excel [dupliquer]

1

Je me demande comment je peux concaténer une ligne de cellules avec des valeurs séparées par des virgules tout en excluant les cellules vides.

Par exemple, la liste serait:

A1 - Chien

B1 - "cellule vide"

C1 - Chat

Je cherche une formule qui reviendrait ---> Chien, Chat

Vraiment apprécier votre aide!

johnathon05
la source

Réponses:

1

Avec les valeurs possibles dans A1, B1 et C1 , dans D1, entrez:

=IF(A1="","",A1)&IF(B1="","",IF(A1<>"",", "&B1,B1))&IF(C1="","",IF(AND(A1="",B1=""),C1,", "&C1))

Cela évite l'utilisation de blancs et l'utilisation de virgules inutiles.

Gary's Student
la source
0

Excel ne possède pas de fonctions intégrées pouvant faire cela. Il existe des solutions de contournement qui aboutissent à des valeurs codées en dur que je n'aime pas vraiment.

Sinon, vous pouvez utiliser une fonction définie par l'utilisateur

Function comb_cells(r As Range, Optional delim As String = " ") As String

    For Each c In r
        If IsEmpty(c.Value) Then
        Else
            If Len(comb_cells) = 0 Then
                comb_cells = c.Value
            Else
                comb_cells = comb_cells & delim & c.Value
            End If
        End If
    Next

End Function

Alors la formule serait

=comb_cells(A1:C1,", ")

Malheureusement, les fonctions définies par l'utilisateur peuvent être pénibles, car elles ne fonctionneront pas en dehors de ce classeur ou sur d'autres ordinateurs (en fonction de l'endroit où il est enregistré), mais je pense toujours que ce serait votre meilleur choix.

Cette fonction prend une plage qui peut inclure à la fois des lignes et des colonnes que chaque commande doit boucler de la même façon que vous liriez (de gauche à droite, la ligne suivante, de gauche à droite, etc.).

gtwebb
la source