← All functions

RTD

Unsupported (not recognized)

Category: Lookup and reference · Last tested 2026-09-01

Real compatibility results for the RTD function: executed in Excel for the web, Google Sheets and LibreOffice Calc, with desktop Excel behavior from Microsoft’s official documentation (we do not run desktop Excel — Excel for the web is a different application and is executed separately). Syntax and links to that documentation are below.

Support matrix

EngineDocumentedLive-testedVerdict
Excel (desktop)Yes No — documented only n/a
Excel for the web— Yes (recalc, 2026-09-01) Unsupported (not recognized)
Google SheetsNo Yes (Drive import, 2026-08-31) Unsupported (not recognized)
LibreOffice CalcNo Yes (25.8.7.3, 2026-08-31) Unsupported (not recognized)

LibreOffice version history

We executed the same test cases under each LibreOffice release to show exactly when RTD’s support changed — not documentation claims, real results.

LibreOffice versionVerdictTested
24.2.0.3 Unsupported (not recognized) 2026-08-31
24.8.7.2 Unsupported (not recognized) 2026-08-31
25.2.0.3 Unsupported (not recognized) 2026-08-31
25.8.7.3 Unsupported (not recognized) 2026-08-31

Why isn't RTD working in LibreOffice?

LibreOffice Calc does not implement RTD as of 25.8.7.3 — in our executed tests it returns a #NAME? (unrecognized function) error. This is not a typo or a settings problem, and saving the file as .xlsx does not change it: the function simply isn’t available yet. The same formula is documented for Excel. Watch the LibreOffice version support page — we re-run every test on each new release, so it will flip to Supported here as soon as it lands.

Why isn’t RTD working in Google Sheets?

Google Sheets does not implement RTD: we imported the formula into Sheets on 2026-08-31 and every case came back #NAME? (unrecognized function). Sheets is a rolling service with no version to pin, so this is a statement about the service on that date, and Google’s own function list does not document it either. Rewrite the formula with a documented Sheets equivalent — see the Excel ↔ Sheets equivalents table.

Executed test cases

Excel for the web (executed 2026-09-01 via OneDrive recalculation)

These values come from Excel for the web, not from desktop Excel. They are two different implementations of the calculation engine, and this run measured only the web one: the corpus was uploaded to OneDrive as .xlsx, recalculated by Excel for the web on open, and downloaded again for readback. Excel for the web is a rolling service with no pinnable version, so the run is identified by its date. Where a value here disagrees with the Expected column — which is Microsoft’s documentation of the desktop product — we cannot tell you whether the web engine diverges from the desktop one or the documentation is wrong about both, because we do not run desktop Excel.

FormulaDescriptionResultExpectedVerdict
=RTD("NoSuchProgID","","topic") Existence probe only: RTD requires a running real-time data COM server, which no flat workbook can supply, so this records what the engine returns rather than asserting a documented value #NAME?
Provenance

NOT EXECUTABLE AS DOCUMENTED, and deliberately recorded as a probe rather than a support claim -- the same treatment batch B gave the CUBE* family and COPILOT, and batch D gave DETECTLANGUAGE. Microsoft documents RTD as retrieving real-time data "from a program that supports COM automation": the first argument is the ProgID of a registered real-time data SERVER, which must be installed on the machine, registered with the operating system, and running. A .xlsx carries no such server, and neither LibreOffice Calc nor Google Sheets can supply one, so the documented behaviour cannot be reproduced by this harness in any engine -- and an engine that DID return a number here would not thereby be compatible, because there would be no server behind the number. THE SAME AMBIGUITY THE CUBEVALUE FILE RECORDS APPLIES: a #NAME? from an unregistered ProgID and a #NAME? from an unimplemented function name are the same token, so this case is recorded with no asserted expected value and can never be scored as documented behaviour. What the run does establish is recorded separately: probing all four pinned LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form, the COM.MICROSOFT. add-in form, the ORG.OPENOFFICE. form and the _xlfn.ORG.OPENOFFICE. form returned #NAME? for ALL FIVE spellings on every build, which is the signature of a name the engine does not implement at all. RTD IS THE THIRD NAME THIS PUSH HAS DECLINED TO ASSERT ON FOR ITS OWN NATURE rather than for a documentation gap, after CALL and REGISTER.ID -- both of which invoke or register external code and return an opaque handle, and neither of which has a test file at all. RTD gets a probe file where they do not, because RTD's argument list is ordinary data (three strings) and can be safely evaluated, whereas CALL and REGISTER.ID name a DLL to load.

Error

Google Sheets (executed 2026-08-31 via Drive import)

Google Sheets is a rolling service with no pinnable version, so this run is identified by its date. The corpus was imported to Drive as .xlsx, recalculated by Sheets, and exported back for readback.

FormulaDescriptionResultExpectedVerdict
=RTD("NoSuchProgID","","topic") Existence probe only: RTD requires a running real-time data COM server, which no flat workbook can supply, so this records what the engine returns rather than asserting a documented value #NAME?
Provenance

NOT EXECUTABLE AS DOCUMENTED, and deliberately recorded as a probe rather than a support claim -- the same treatment batch B gave the CUBE* family and COPILOT, and batch D gave DETECTLANGUAGE. Microsoft documents RTD as retrieving real-time data "from a program that supports COM automation": the first argument is the ProgID of a registered real-time data SERVER, which must be installed on the machine, registered with the operating system, and running. A .xlsx carries no such server, and neither LibreOffice Calc nor Google Sheets can supply one, so the documented behaviour cannot be reproduced by this harness in any engine -- and an engine that DID return a number here would not thereby be compatible, because there would be no server behind the number. THE SAME AMBIGUITY THE CUBEVALUE FILE RECORDS APPLIES: a #NAME? from an unregistered ProgID and a #NAME? from an unimplemented function name are the same token, so this case is recorded with no asserted expected value and can never be scored as documented behaviour. What the run does establish is recorded separately: probing all four pinned LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form, the COM.MICROSOFT. add-in form, the ORG.OPENOFFICE. form and the _xlfn.ORG.OPENOFFICE. form returned #NAME? for ALL FIVE spellings on every build, which is the signature of a name the engine does not implement at all. RTD IS THE THIRD NAME THIS PUSH HAS DECLINED TO ASSERT ON FOR ITS OWN NATURE rather than for a documentation gap, after CALL and REGISTER.ID -- both of which invoke or register external code and return an opaque handle, and neither of which has a test file at all. RTD gets a probe file where they do not, because RTD's argument list is ordinary data (three strings) and can be safely evaluated, whereas CALL and REGISTER.ID name a DLL to load.

Error

LibreOffice Calc 25.8.7.3 (tested 2026-08-31)

FormulaDescriptionResultExpectedVerdict
=RTD("NoSuchProgID","","topic") Existence probe only: RTD requires a running real-time data COM server, which no flat workbook can supply, so this records what the engine returns rather than asserting a documented value #NAME?
Provenance

NOT EXECUTABLE AS DOCUMENTED, and deliberately recorded as a probe rather than a support claim -- the same treatment batch B gave the CUBE* family and COPILOT, and batch D gave DETECTLANGUAGE. Microsoft documents RTD as retrieving real-time data "from a program that supports COM automation": the first argument is the ProgID of a registered real-time data SERVER, which must be installed on the machine, registered with the operating system, and running. A .xlsx carries no such server, and neither LibreOffice Calc nor Google Sheets can supply one, so the documented behaviour cannot be reproduced by this harness in any engine -- and an engine that DID return a number here would not thereby be compatible, because there would be no server behind the number. THE SAME AMBIGUITY THE CUBEVALUE FILE RECORDS APPLIES: a #NAME? from an unregistered ProgID and a #NAME? from an unimplemented function name are the same token, so this case is recorded with no asserted expected value and can never be scored as documented behaviour. What the run does establish is recorded separately: probing all four pinned LibreOffice builds (24.2.0.3, 24.8.7.2, 25.2.0.3, 25.8.7.3) with the plain name, the _xlfn. storage form, the COM.MICROSOFT. add-in form, the ORG.OPENOFFICE. form and the _xlfn.ORG.OPENOFFICE. form returned #NAME? for ALL FIVE spellings on every build, which is the signature of a name the engine does not implement at all. RTD IS THE THIRD NAME THIS PUSH HAS DECLINED TO ASSERT ON FOR ITS OWN NATURE rather than for a documentation gap, after CALL and REGISTER.ID -- both of which invoke or register external code and return an opaque handle, and neither of which has a test file at all. RTD gets a probe file where they do not, because RTD's argument list is ordinary data (three strings) and can be safely evaluated, whereas CALL and REGISTER.ID name a DLL to load.

Error

Docs & syntax