Main content

Excel TEXTJOIN: Combine Cells With a Delimiter

By Szabó Gergő · Updated

TEXTJOIN concatenates a range with a delimiter and can ignore empty cells, which CONCATENATE cannot do cleanly.

Syntax and arguments

=TEXTJOIN(delimiter, ignore_empty, text1, [text2], ...)
delimiter
The separator, such as ", " or CHAR(10).
ignore_empty
TRUE skips blanks so you do not get repeated commas.
text1
A cell or range to join.

TEXTJOIN examples

01
Tag list

Optional tags in B2:E2.

=TEXTJOIN(", ",TRUE,B2:E2)

Empty tags do not create extra commas.

02
Line breaks

Address parts in A2:A4.

=TEXTJOIN(CHAR(10),TRUE,A2:A4)

Turn on Wrap Text to see the lines.

03
Readable date

ID in A2, date in B2.

=A2&" - "&TEXT(B2,"yyyy-mm-dd")

TEXT stops the date from becoming a serial number.

Common mistakes

  • Leaving ignore_empty FALSE

    Set TRUE unless you want a placeholder for every blank.

  • Joining dates raw

    Wrap dates in TEXT first.

  • Using CONCATENATE for a range

    CONCATENATE needs each cell listed. TEXTJOIN accepts a range.

TEXTJOIN FAQ

TEXTJOIN vs CONCAT?

CONCAT joins without a delimiter and without skip-blanks. TEXTJOIN is usually what you want.

Is there a character limit?

The result must fit in a cell (32,767 characters).

Can I join a filtered list?

TEXTJOIN(FILTER(A2:A100,B2:B100="Paid"),...) on Microsoft 365.