If I understand you correctly, then it’s pretty straightforward. I even considered expanding the formula to demonstrate that, but was running short on time.
The trick would be to use the OFFSET function and rely on the default mechanisms of Calc to expand named ranges. This requires a little understanding of Calc ‘hygiene’ that you may have, or you may never have thought about.
In general, if you create a named range (Ctrl+F3 or just select and name in box at upper left) Calc will automatically expand that range so long as you insert into it by clicking on the row number (far left) of a row in the range and using “Insert row above” for all but the first row, or “Insert row below” for all but the last row. Makes sense, really.
But if you want to insert many rows, that would be laborious. Fortunately, the same semantics play out by clicking on any cell in the range and using right-click Insert (or Ctrl+[Numpad+]). Here you can chose Entire Row and set the number of rows to insert in a small dialogue box that even allows use of tab to move around, etc…
So, set up a named range of at least two rows in a column (select cells and enter in range name box at top left, or use Ctrl+F3…let’s call this range Times) and put something like END in the last row. Now you can add n rows by going to the last row of the range (Ctrl+Down from anywhere above) and Ctrl+[Numpad+]. Add n rows, then paste in n datapoints into those new rows.
To have the MODE formula keep working, use the name of the named range (Times) in that formula, trimming it and sliding it by using OFFSET.
=MODE((OFFSET(Times,1,0,ROWS(Times)-2,COLUMNS(Times))-OFFSET(Times,0,0,ROWS(Times)-2,COLUMNS(Times)))*86400)
The -2 is really -1 for setting up the differences (as we slide the region one row) and -1 for ignoring our END marker.
Unfortunately, even using Excel with the modern UNIQUE and FILTER functions, I didn’t succeed in getting the MODE function to ignore 0s, where a person could just mark nearly an entire column as the named range and be done with it. Someone may have an idea how, but simply OFFSETting the virtual ranges produced by the spill functions didn’t seem to work.