TRUECALC
Functions

TZCANONICAL

Validates and normalizes a zone name (best-effort; IANA links are not resolved)

Try it

When to use it

When should I use TZCANONICAL instead of just passing the zone name directly?

Use TZCANONICAL when you receive a zone name from user input or an external system and want to surface the normalised form before storing or displaying it. It lets you catch unrecognised names early without waiting for a downstream function to error.

No. TZCANONICAL returns the input unchanged when it is a valid alias. It only confirms that the name is recognised — it does not rewrite aliases to their canonical targets. Use it for normalisation checks, not alias resolution.

What is the difference between TZCANONICAL and TZVALID?

TZVALID returns a boolean (TRUE or FALSE) so you can branch on validity. TZCANONICAL returns the normalised zone string itself or #VALUE! if unrecognised. Use TZVALID first when you only need a yes/no check; use TZCANONICAL when you need the normalised name as a value.

Use cases

Guard a pipeline with a validity check then normalise

Confirm a fixed-offset string is recognised

Used in

engineering

Syntax

TZCANONICAL(zone)

On this page