Concatenare solo cellule riempite


21

Al momento ho un foglio di calcolo per tenere traccia dei punteggi in un gioco di carte. Possono esserci tra due e cinque giocatori. Ho il seguente:

| Players  |
|----------|
| Dave     |
| Paul     |
| John     |
|          |
|          |

Al momento utilizzo:

= JOIN( " vs " ; C10:C14 )

Ma il problema è che poi finisco con Dave vs Paul vs John vs vs.

C'è un modo per dirlo, Dave vs Paul vs Johnma se avessi più giocatori, Dave vs Paul vs John vs Robcon una formula?

Risposte:



16

Prova TEXTJOIN :

=textjoin(" vs ",1,C10:C14)

2
Questa è la risposta migliore È più breve, più semplice e consente di ignorare i valori vuoti.
Ricardo Amaral,

1
Ho sempre letto tutto per cercare la risposta migliore non solo una "risposta operativa" :)
Ricardo Amaral

5

Entrambe le soluzioni sopra funzionano se è presente almeno una cella contenente testo. Tuttavia:

= JOIN(" vs ",SPLIT(JOIN("%",C10:C14),"%",0))

Ritornerebbe %%%%se C10: C14 fossero tutti vuoti e.

= JOIN( " vs " ; FILTER(C10:C14; NOT(C10:C14 = "") ))

Ritornerebbe #N/Ase C10: C14 fossero tutti vuoti.

Tuttavia, puoi modificare leggermente la prima soluzione per sostituire i %segni con stringhe vuote avvolgendo la formula con la SUBSTITUTEfunzione in questo modo:

=SUBSTITUTE(
   JOIN(" vs ",SPLIT(JOIN("%",C10:C14),"%",0)),    // text_to_search
   "%",                                            // search_for
   ""                                              // replace_with
 )

(Indicato su più righe per maggiore chiarezza)


Nota: "sopra" non ha davvero alcun contesto nelle risposte, poiché le risposte possono essere ordinate in diversi modi.
Ale

4

Ho trovato un'altra soluzione:

=JOIN(" vs ",SPLIT(JOIN("%",C10:C14),"%",0))

La% può essere qualsiasi simbolo che non è presente nell'elenco, come una virgola, una e commerciale o un punto interrogativo.


Bella alternativa !!
Jacob Jan Tuinstra,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.