CONVERT_OOO Function (LibreOffice Calc)

Compatibility Intermediate LibreOffice Calc Introduced in LibreOffice (OOo compatibility layer)
compatibility legacy openoffice unit-conversion migration

The CONVERT_OOO function is a legacy unit-conversion function preserved for compatibility with old OpenOffice.org spreadsheets. It behaves similarly to CONVERT but uses the historical OOo unit codes.

Compatibility

What the CONVERT_OOO Function Does

  • Converts a number from one unit to another
  • Uses OpenOffice.org’s legacy unit codes
  • Preserves behavior of old OOo spreadsheets
  • Exists only for backward compatibility
  • Should be replaced with CONVERT in modern files

Syntax

CONVERT_OOO(number; from_unit; to_unit)

Arguments

  • number:
    The numeric value to convert.

  • from_unit:
    Legacy OOo unit code.

  • to_unit:
    Legacy OOo unit code.

Basic Examples

Convert meters to kilometers (legacy syntax)

=CONVERT_OOO(1000; "m"; "km")
→ 1

Convert Celsius to Fahrenheit (legacy)

=CONVERT_OOO(0; "C"; "F")
→ 32

Convert grams to pounds (legacy)

=CONVERT_OOO(1000; "g"; "lb")
→ 2.20462

Advanced Examples

Convert liters to cubic meters

=CONVERT_OOO(500; "L"; "m3")

Convert Pascal to bar

=CONVERT_OOO(101325; "Pa"; "bar")

Convert miles to meters

=CONVERT_OOO(1; "mi"; "m")

Convert joules to calories

=CONVERT_OOO(4184; "J"; "cal")

Legacy Unit Code Notes

CONVERT_OOO uses older OOo unit identifiers, which may differ from:

  • modern LibreOffice CONVERT
  • Excel’s CONVERT
  • SI standard prefixes

Examples of legacy quirks:

  • "m3" instead of "m^3"
  • "cal" vs "cal_th"
  • "lb" vs "lbm"
  • "deg" vs "°"

Because of these inconsistencies, CONVERT_OOO is not recommended for new formulas.

Edge Cases and Behavior Details

CONVERT_OOO returns a number

Behavior details

  • Accepts only legacy OOo unit codes
  • Incompatible units → Err:502
  • Case-sensitive
  • Temperature conversions use nonlinear formulas
  • Errors propagate

When to use CONVERT_OOO

  • Only when opening old OpenOffice.org spreadsheets
  • Only when the original formulas must remain unchanged
  • Only when migrating legacy documents

When NOT to use it

  • New spreadsheets
  • Engineering models
  • Scientific workflows
  • Anything requiring modern unit standards

Common Errors and Fixes

Err:502 — Invalid argument

Cause:

  • Using modern unit codes with CONVERT_OOO
  • Mixing legacy and modern units
  • Unsupported legacy unit

Fix:

  • Replace with modern CONVERT
  • Check OOo unit code lists

Wrong conversion result

Cause:

  • Legacy unit code mismatch

Fix:

  • Migrate formula to modern CONVERT

Migration Guidance

To modernize a spreadsheet:

Replace:

=CONVERT_OOO(value; "old_unit"; "old_unit")

With:

=CONVERT(value; "new_unit"; "new_unit")

Example:

Legacy:

=CONVERT_OOO(1000; "g"; "kg")

Modern:

=CONVERT(1000; "g"; "kg")

Best Practices

  • Use CONVERT for all new spreadsheets
  • Keep CONVERT_OOO only for legacy compatibility
  • Migrate old formulas whenever possible
  • Document any remaining legacy units in comments
If you see CONVERT_OOO in a spreadsheet, it’s a signal that the file originated from OpenOffice.org. Modernize it with CONVERT for long-term stability.

Related Patterns and Alternatives

  • CONVERT — modern unit conversion
  • Legacy OOo functions — compatibility layer
  • ROUND / TEXT — formatting converted values

By understanding CONVERT_OOO, you can safely migrate legacy OpenOffice.org spreadsheets into modern LibreOffice Calc environments.

Copyright 2026. All rights reserved.