RAND.NV Function (LibreOffice Calc)
Generate non-volatile random values with LibreOffice RAND.NV, understand reopening and hard recalculation, and scale one stored draw without resampling it.
Verification status: 6 source-derived formula interpretations were checked against LibreOffice 26.8 Help, 26.8.1.1 registration and the complete callback. No random samples or recalculation events were executed. How formula examples are checked
Quick answer: RAND.NV() produces a random value from 0 up to, but excluding, 1 in the inspected implementation. “Non-volatile” limits routine recalculation; it does not permanently freeze the result.
Availability and version history
- Introduced: LibreOffice 7.0, explicitly stated in the function-specific Help section.
- Supported in: 26.8 Help and 26.8.1.1 native registration; no retirement is established.
- Scope: Desktop Calc, English formulas. The documented
ORG.LIBREOFFICE.RAND.NVname is outside OpenFormula 1.3. - Checked: October 14, 2026. Function-specific documentation, source and example constraints were checked. Random sampling and recalculation events were not executed.
What RAND.NV does
Use RAND.NV when a random worksheet value should not change merely because you enter unrelated data. Its native opcode dispatches to the same random-number callback as RAND, using a uniform real distribution. The distinction lies in when recalculation is requested, rather than a different numerical range.
A random result has no fixed expected decimal. The examples therefore show constraints and transformations, not invented observed draws. A value can repeat, and a small sample is not guaranteed to be evenly spread across its range. Function Help.
Syntax and arguments
RAND.NV()
There are no arguments. The parentheses are still required in a formula. There is no seed argument, cell identifier argument or instruction to remember a draw forever.
Source-derived examples
The table gives documented or code-derived interpretations, not recorded application results. Random rows deliberately give ranges or sets rather than invented sampled numbers.
| Formula | Source-derived result or constraint | Setup and interpretation |
|---|---|---|
=RAND.NV() |
0 ≤ u < 1 | A fresh draw is represented by u; no particular decimal is promised. |
=10+5*RAND.NV() |
10 ≤ result < 15 | Scale a draw to a five-unit interval. |
=-2+4*RAND.NV() |
−2 ≤ result < 2 | Shift and scale a draw across zero. |
=RAND.NV()<0.25 |
TRUE or FALSE | An ideal uniform draw gives a one-quarter event probability. |
=1-RAND.NV() |
0 < result ≤ 1 | Reversing the interval includes 1 and excludes 0. |
=10+5*A1 |
11.25 | For an independent arithmetic check, manually set A1 to 0.25; this is not a recorded random draw. |
Practical worksheet
Put =RAND.NV() in A1 and use references to A1 in dependent formulas, such as =10+5*A1 in B1. That lets several calculations use the same stored draw. Writing RAND.NV separately in several cells requests several draws instead, so differences between the cells are expected.
For a reproducible demonstration of the arithmetic, temporarily use the fixed number 0.25 in A1. B1 then equals 11.25; =A1<0.25 is FALSE because the threshold is strict. Restore the random formula only when you actually want sampling. A fixed-input worksheet proves the transformation, not the random generator or its recalculation behavior.
Advanced interpretation and checks
For a lower bound a and upper bound b with a < b, a+(b-a)*u maps a draw u in [0,1) into [a,b). With a=10, b=15 and u=0.25, the mapped value is 11.25. Endpoint direction matters: 1-u has the opposite open endpoint. Use that distinction when a later mathematical formula cannot accept zero.
If the resulting scenario must be preserved, save its numerical values separately rather than assuming a formula is a permanent record. A formula can be evaluated again when the workbook opens. RAND.NV does not expose a seed or promise a reproducible sequence across versions, files or machines. Inspected implementation.
Boundaries and troubleshooting
The function-specific Help says ordinary new input events do not recalculate RAND.NV. It also says F9 normally leaves it unchanged, except when the cursor is on the formula’s cell; hard recalculation and reopening the file recalculate it. Those are documented event rules, not GUI observations from this review.
Do not use a short sequence to certify uniformity, independence or security properties. No random samples, statistical-quality test, event-timing test or seed behavior were executed. For whole-number choices, use the integer function instead of rounding a continuous draw, since rounding assigns different widths to endpoint bins.
Related functions
Official evidence and checking scope
- Function-specific Help
- Complete versioned callback
- English native-name registration
- Exact random-function opcode dispatch
- Shared scalar and matrix random helper
The review covers the retained documentation and exact 26.8.1.1 source. No application run is claimed for this guide. The event rules are documentary evidence rather than measured recalculation behavior.