CONCAT Function (LibreOffice Calc)

Text Beginner LibreOffice Calc LibreOffice 5.2

The CONCAT function in LibreOffice Calc joins multiple text values into a single string. It is the modern replacement for CONCATENATE and is essential for building dynamic text, labels, codes, and structured output.

The **CONCAT** function joins multiple text values into a single string in LibreOffice Calc. It is the modern replacement for `CONCATENATE`, offering cleaner syntax and better compatibility with modern spreadsheet engines. CONCAT is essential for building dynamic labels, structured codes, messages, and formatted output.

This guide provides syntax, examples, edge cases, and best practices, making it one of the most complete CONCAT references available for LibreOffice Calc.

What the CONCAT Function Does

  • Joins multiple text values into one string
  • Accepts ranges and arrays
  • Automatically converts numbers to text
  • More modern and flexible than CONCATENATE
  • Does not insert delimiters (use TEXTJOIN for that)

It is designed to be simple, modern, and widely compatible.

Syntax

CONCAT(text1; text2; ...)

Arguments

  • text1, text2, …:
    One or more text values, cell references, or ranges.

Basic Examples

Join two strings

=CONCAT("Hello"; "World")

Returns "HelloWorld".

Join with a space

=CONCAT("Hello"; " "; "World")

Join cell values

=CONCAT(A1; B1)

Join a range

=CONCAT(A1:A3)

If A1:A3 = {“A”; “B”; “C”}, returns "ABC".

Join text and numbers

=CONCAT("Year: "; 2024)

Returns "Year: 2024".

Advanced Examples

Build a full name

=CONCAT(A1; " "; B1)

Build a file path

=CONCAT("/home/user/"; A1; "/"; B1)

Build a SKU code

=CONCAT(LEFT(A1; 3); "-"; RIGHT(B1; 4))

Build a dynamic label

=CONCAT("Total for "; A1; ": "; B1)

Join cleaned text

=CONCAT(TRIM(A1); " "; TRIM(B1))

Join variable-length components

=CONCAT(A1; IF(B1=""; ""; " - " & B1))

Join extracted substrings

=CONCAT(LEFT(A1; 2); MID(A1; 4; 3); RIGHT(A1; 2))

Join with conditional logic

=CONCAT(A1; IF(C1>0; " (Active)"; " (Inactive)"))

Join a range of codes

=CONCAT(A1:A10)

(Produces a continuous string.)

Edge Cases and Behavior Details

CONCAT does not insert delimiters

Use TEXTJOIN when you need separators.

CONCAT treats numbers as text

=CONCAT(1; 2; 3) → "123"

CONCAT ignores empty strings

=CONCAT("A"; ""; "B") → "AB"

CONCAT includes blank cells as empty strings

=CONCAT(A1; A2)

If A2 is blank, it contributes nothing.

CONCAT of an error propagates the error

=CONCAT("A"; #N/A) → #N/A

CONCAT of a range joins in row-major order

A1:B2 joins as A1, A2, B1, B2.

CONCAT cannot specify an instance or pattern

Use SUBSTITUTE or REPLACE for targeted editing.

Common Errors and Fixes

CONCAT returns unexpected order

Cause:

  • Range is joined row-by-row
  • User expected column-by-column

Fix:
Transpose the range or specify cells individually.

CONCAT returns too many characters

Cause:

  • Hidden spaces
  • TRIM not applied
  • CLEAN not applied

CONCAT returns #VALUE!

Cause:

  • One of the arguments is an error
  • Range contains an error

Best Practices

  • Use CONCAT for simple joining without delimiters
  • Use TEXTJOIN when you need separators
  • Use TRIM and CLEAN before concatenation
  • Use LEFT/RIGHT/MID to build structured strings
  • Use SUBSTITUTE to clean text before joining
  • Use CONCAT with IF for conditional assembly
CONCAT is your modern, streamlined text‑builder — perfect for assembling dynamic labels, codes, and structured output with clean syntax.
  • Use TEXTJOIN to join with delimiters
  • Use CONCATENATE for legacy compatibility
  • Use LEFT, RIGHT, MID for extraction
  • Use SUBSTITUTE and REPLACE for editing
  • Use TRIM and CLEAN for normalization

By mastering CONCAT and its companion functions, you can build clean, flexible, and powerful text‑processing workflows in LibreOffice Calc.