How to Use ARRAYTOTEXT and VALUETOTEXT Functions in Microsoft Excel

In Microsoft Excel, converting data tables or dynamic formula spills into readable, delimited text strings traditionally required nested TEXTJOIN formulas or custom Power Query transformations. With the modern dynamic array functions ARRAYTOTEXT and VALUETOTEXT, Excel users can effortlessly transform entire ranges, matrix arrays, and numerical values into formatted text representations inside a single formula cell.

Overview of ARRAYTOTEXT and VALUETOTEXT

Both functions belong to Excel’s text manipulation suite and serve closely related purposes with distinct advantages:

  • ARRAYTOTEXT: Converts an array or range of values into a comma-delimited text string. It allows you to choose between concise human-readable output and strict programmer-ready syntax.
  • VALUETOTEXT: Converts an individual value or range into a text string representation. Unlike the standard TEXT function, VALUETOTEXT does not require a custom format mask (such as "0.00") and handles logical Booleans, errors, and text identically.

Syntax and Parameters

ARRAYTOTEXT Syntax

The syntax for ARRAYTOTEXT is as follows:

=ARRAYTOTEXT(array, [format])
  • array: The range of cells or array of values you want to convert to text (required).
  • format: A binary flag specifying the output style (optional):
    • 0 (Concise – default): Returns values separated by commas and spaces. Text strings are displayed without enclosing quotation marks.
    • 1 (Strict): Returns an array constant representation matching Excel formula syntax, enclosing text in quotation marks, rows separated by semicolons, and columns separated by commas (e.g., {"Apples", "Bananas"; "Carrots", "Dill"}).

VALUETOTEXT Syntax

The syntax for VALUETOTEXT is as follows:

=VALUETOTEXT(value, [format])
  • value: The value or reference to be converted to text (required).
  • format: 0 for concise text format (default), or 1 for strict format with quotes around text and literal escaping.

Practical Example 1: Flattening a Column into a Comma-Separated Summary

Suppose you have a list of departmental project names in cells A2:A8 that you need to embed inside an executive summary paragraph or email alert:

  1. Select the target cell where you want your summary string to appear (e.g., C2).
  2. Enter the concise formula:
    =ARRAYTOTEXT(A2:A8, 0)
  3. Press Enter. Excel immediately outputs a single clean sentence string:
    Alpha Migration, Cloud Onboarding, Security Audit, ERP Upgrade

Notice that unlike TEXTJOIN, you do not need to specify a delimiter string or set an ignore-empty flag; ARRAYTOTEXT automatically formats the string with standard comma-and-space punctuation.

Practical Example 2: Inspecting 2D Matrix Spills with Strict Format

When working with dynamic array functions like FILTER, UNIQUE, or CHOOSEROWS, formulas occasionally return multi-row, multi-column spills that may cause #SPILL! errors if surrounding cells are occupied. You can use ARRAYTOTEXT with strict formatting to inspect matrix structure inside a single cell:

=ARRAYTOTEXT(FILTER(A2:C20, B2:B20="Active"), 1)

The result produces a fully formed Excel array constant:

{"Acme Ltd", "Active", 12000; "Global Tech", "Active", 45000}

This strict output can be copied directly into other formula definitions or VBA macros as an in-line literal array constant.

Practical Example 3: Handling Mixed Data Types with VALUETOTEXT

When building automated notification messages, concatenating cell values that contain Booleans (TRUE / FALSE) or numeric values with standard ampersands (&) can result in unexpected conversions or type mismatches. VALUETOTEXT ensures reliable string coercions:

="System operational status is " & VALUETOTEXT(B2) & " with verified score " & VALUETOTEXT(C2)

If cell B2 contains the logical boolean TRUE and C2 contains 98.5%, the formula reliably returns: “System operational status is TRUE with verified score 0.985” without throwing value casting errors.

Key Differences Between ARRAYTOTEXT, VALUETOTEXT, and TEXTJOIN

Feature ARRAYTOTEXT VALUETOTEXT TEXTJOIN
Primary Use Case Array/Range to text string Single value or cell to text string Custom delimited text joins
Custom Delimiters No (Fixed comma / semicolon) N/A Yes (Custom string)
Strict Array Constant Output Yes (format = 1) Yes (format = 1) No
Ignore Empty Cells Preserves empty slots Converts empty to empty string Configurable (TRUE/FALSE)

By integrating ARRAYTOTEXT and VALUETOTEXT into your spreadsheet workflows, you can streamline data auditing, generate automated reports, and eliminate redundant formula complexity across your workbooks.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.