Dynamiske matricer gør det let at arbejde med flere værdier i en enkelt formel. Denne dynamiske opførsel betyder at – anderledes end klassiske matrixformler – resultatet tilpasser sig: hvis størrelse på input-matricen eller en funktions argumenter ændres, så vil størrelsen af resultat-matricen også ændres. Det er ikke nødvendigt at skrive matrixformlen ind på ny, når input- og output-data vokser eller skrumper.
Dynamiske matricer fremkommer som resultatet af funktionerne FILTRER (på engelsk:FILTER), SLUMPMATRIX (på engelsk: RANDARRAY), SEKVENS (på engelsk: SEQUENCE), SORTER (på engelsk: SORT), SORTER.EFTER (på engelsk: SORTBY), UNIKKE (på engelsk: UNIQUE), XOPSLAG (på engelsk: XLOOKUP), XSAMMENLIGN (på engelsk: XMATCH).
Disse funktioner returnerer automatisk en datamatrix, så det er ikke nødvendigt at skrive dem ind med tastaturgenvejen Ctrl + Skift + Enter.
Den dynamiske matrix siges at løbe over i regnearket, når data indsættes som resultat af de ovenstående funktioner. Du kan referere til de resulterende matrixdata ved at skrive referencen på det første element af den resulterende matrix efterfulgt af overløbssymbolet #.

Range A2:A11 is the source data.
Range B2:B11 is a dynamic array spilled as result of the SORT function. Every cell in B2:B11 has formula =SORT(A2:A11).
Range C2:C11 is a dynamic array referenced the # spill suffix to the range B2:B11. Every cell in the range C2:C11 has formula =B2#
Cell D2 shows reference error #REF! since range A2:A11 is not a dynamic array.
Range E2:E11 is also a dynamic array referencing another dynamic array.
If the spill range is blocked by other data, Calc returns the #SPILL! error. After clearing the space for spilling, the formula will automatically spill.