CONCAT Function (Gnumeric)
Join Gnumeric text and ranges with CONCAT, preserve identifiers and explicit formatting, and check blank, error and delimiter behavior.
Verification status: See the evidence and test scope described in this guide. How formula examples are checked
Quick answer: =CONCAT("AB","-",42) has the source-backed reference result AB-42. Gnumeric 1.12.62 implements CONCAT by calling the same callback as CONCATENATE; do not assume they have different range behavior.
Availability and evidence
- Introduction: Gnumeric 1.12.32: NEWS explicitly lists CONCAT and TEXTJOIN as new text functions.
- Source support: Registered in the Gnumeric 1.12.62 plugin. No retirement is established. The last functioning application version is unverified for this guide.
- Evidence dates: Official 1.12.62 source was retained October 13–14, 2026 and reviewed October 15. Exact string and rational-matrix reference checks are independent calculations, not native Gnumeric, headless application or GUI execution.
Syntax and what gets joined
=CONCAT(s1,s2,...)
Supply text values, scalar expressions, cell references or ranges. The collector expands ranges and combines their values into one text result. Arguments are processed in the order supplied. There is no delimiter argument and no automatic space between items. If you need punctuation, make it an explicit argument.
Gnumeric’s own help says this function is identical to CONCATENATE, and the callback delegates directly to that implementation. An explanation imported from another spreadsheet about CONCAT adding range support that CONCATENATE lacks would therefore be misleading here.
The collector ignores physically empty cells. Empty text contributes no characters either. Errors are not skipped: strict collection propagates an input error rather than quietly returning an incomplete string. The string conversion uses underlying values, not each cell’s custom display format.
Reproducible identifier worksheet
Create Parts. Format A2:A5 as text before entering the values below. Leave A4 physically empty; do not type the word blank or a space.
| Cell | Entry | Meaning |
|---|---|---|
| A2 | AB | Prefix text |
| A3 | 007 | Three-character identifier text |
| A4 | physically empty | Missing optional part |
| A5 | X | Suffix text |
Put =CONCAT(A2:A5) in C2. The expected text is AB007X. Put =CONCAT(A2,"-",A3,"-",A5) in C3; it gives AB-007-X. C2 includes the range’s values without adding a separator for the blank row. C3 has two literal hyphens because the formula explicitly requests them.
In a copy, replace A3 with text 008. C2 becomes AB008X and C3 becomes AB-008-X. To investigate formatting separately, put numeric 7 in D2 and apply a three-digit display format. =CONCAT("ID-",D2) still follows the numeric value, giving ID-7, not the displayed leading-zero form. Keep text identifiers as text from entry onward.
Literal reference controls
| Control | Independent reference result |
|---|---|
=CONCAT("aa","bb") |
aabb |
=CONCAT("AB","-",42) |
AB-42 |
=CONCAT("A"," ","B") |
A B |
=CONCAT("A","","B") |
AB |
=CONCAT("","") |
`` |
=CONCAT("007","X") |
007X |
=CONCAT("A","#DIV/0!") |
A#DIV/0! |
=CONCAT("A",1/0) |
#DIV/0! |
These controls are independently constructed strings, checked against the collector and callback. They are not captured native worksheet outputs. The single space in the third control is intentional; empty text and whitespace are different inputs.
Advanced: make the representation explicit
Suppose a source record has text prefix R in F2 and numeric sequence 7 in G2. =CONCAT(F2,"-",TEXT(G2,"000")) is the intended formatting workflow for R-007 under the quoted numeric format. An explicit TEXT conversion makes the representation part of the formula, rather than a side effect of how G2 happens to look.
For a deliberately locale-independent control, put text 007 in H2 and use =CONCAT(F2,"-",H2). That gives the same three-digit identifier without asking numeric formatting to supply it. The TEXT format and localized formatting settings should be checked in the installed build; this guide’s native-untested status includes that display layer.
Do not use CONCAT as a general serialization format without specifying boundaries. =CONCAT("AB","C") and =CONCAT("A","BC") both give ABC. You cannot recover which original pair was used from that result alone. Adding a delimiter helps human readability, but a delimiter that can appear inside fields still requires an escaping or length scheme before the result is reliably machine-readable.
Advanced: preserve failed records instead of hiding them
Put =1/0 in A5 on a disposable copy of the Parts worksheet. The range result propagates #DIV/0!, because collection stops on the error. The text literal "#DIV/0!" would instead be ordinary text. Distinguishing an error value from characters that look like one is important in imported data.
Blank-skipping does not authorize error-skipping. If an upstream formula fails, repairing or explicitly flagging that row is safer than treating it as a missing suffix and producing a plausible identifier. Keep the raw input columns beside the joined result for audit and reconstruction.
Troubleshooting and limits
- Missing punctuation usually means it was never included as an argument. CONCAT adds no spaces, commas or hyphens itself.
- Lost leading zeroes usually happened before concatenation because the source was numeric. Concatenation cannot reconstruct an original identifier’s unknown width.
- A date or currency-looking source is still an underlying value. Format it explicitly when the intended output is a formatted label.
- Boolean spellings and numeric decimal formatting can depend on string conventions or locale; no localized rendering is certified here.
- Do not infer an Excel text-length limit or a maximum argument count from this guide. Extreme sizes, export round trips and every UI entry mode remain unverified.