Reach
Metrology Bench in Excel
Custom functions that run the same @metrologybench/core library as the calculators, inside your workbook. Type =MB. and pick a function. Out-of-range inputs come back as #VALUE! with the reason, never an extrapolated number.
Current library version: 0.6.0. Put =MB.VERSION() on a sheet so its results are traceable, and use the validation pack to validate the version you run.
Install
The add-in is a small manifest file that tells Excel where the functions live. Excel 2021 or later, Microsoft 365, or Excel on the web.
- Download the manifest.
- Excel on the web or Mac: Insert → Add-ins → My Add-ins → Upload My Add-in, and choose the file.
- Excel on Windows: put the file in a folder, share it (right-click → Properties → Sharing), then File → Options → Trust Center → Trust Center Settings → Trusted Add-in Catalogs, add the folder’s network path and tick “Show in Menu”. Restart Excel; the add-in is under Insert → My Add-ins → Shared Folder.
- Type
=MB.VERSION()in a cell. If it shows the version, everything works.
An organisation can deploy the same manifest to everyone through the Microsoft 365 admin centre. Publishing to AppSource is planned.
What leaves your computer
Nothing you type. The functions run inside Excel’s add-in runtime on your machine; results never go to Metrology Bench.
Excel loads two things from the network: the function files from https://metrologybench.com/excel/, and Microsoft’s own office.js from Microsoft’s servers, which Excel requires for every add-in and which cannot be self-hosted. This is the one place Metrology Bench loads a script from a third party; the website’s pages do not. See the privacy policy.
Calculated values, not certified results.
Functions
| Function | What it returns | Arguments |
|---|---|---|
| =MB.VERSION() | Version of the Metrology Bench library these functions run. Put it on the sheet so a result can be traced. | none |
| =MB.RTD_RESISTANCE(t_C, [r0]) | Platinum RTD resistance in Ω at a temperature in °C (Callendar–Van Dusen, Pt385 coefficients; −200 to 850 °C). R0 defaults to 100. |
|
| =MB.RTD_TEMPERATURE(r_ohm, [r0]) | Temperature in °C from a platinum RTD resistance in Ω (Callendar–Van Dusen, Pt385). R0 defaults to 100. |
|
| =MB.TC_EMF(type, t_C, [t_ref_C]) | Thermocouple EMF in mV at a temperature in °C (NIST ITS-90 reference functions, types B E J K N R S T). t_ref is the reference-junction temperature, default 0. |
|
| =MB.TC_TEMPERATURE(type, emf_mV, [t_ref_C]) | Thermocouple temperature in °C from a measured EMF in mV (NIST ITS-90 inverse functions). t_ref is the reference-junction temperature, default 0. Refused outside the published range. |
|
| =MB.CONVERT_PRESSURE(value, from, to) | Convert a pressure between units (factors from SI definitions, NIST SP 811). Units: Pa, kPa, MPa, bar, mbar, psi, atm, torr, mmHg, inHg, inH2O, mmH2O, kgfcm2. |
|
| =MB.CONVERT_TORQUE(value, from, to) | Convert a torque between units. Units: Nm, cNm, dNm, kNm, ftlb, inlb, inoz, kgfm, kgfcm. |
|
| =MB.COVERAGE_FACTOR(p, [dof]) | Student-t coverage factor k for a coverage probability p (fraction, 0.5 to 0.9999) and degrees of freedom (omit for infinite, i.e. the normal distribution). |
|
| =MB.SPECIFIC_RISK(reading, U, k, [lower], [upper]) | Probability that the true value lies outside the tolerance limits given a reading and its expanded uncertainty U at coverage factor k (JCGM 106 specific risk). Leave a limit blank for a one-sided tolerance. |
|
| =MB.TUR(lower, upper, U95) | Test uncertainty ratio (TU − TL) / (2·U95) per ANSI/NCSL Z540.3 §3.11, for a two-sided tolerance and the process expanded uncertainty at 95 %. |
|
| =MB.AIR_DENSITY(pressure_Pa, t_C, rh_percent) | Moist-air density in kg/m³ by the CIPM-2007 equation from pressure in Pa, temperature in °C (15 to 27) and relative humidity in %. |
|
Each function is a thin call into the library; the equations, sources and test vectors are on the matching calculator pages under Tools. Need a function that isn’t here? Ask.