Calculated Date formula not updating?

We have a Custom List in SP Online which pertains to parts needing to be inspected. Our list has the following fields:

  • LAST-INSP: a manually entered date showing when the part was last inspected.
  • FREQ-IN-DAYS: frequency of inspection, manually entered by the Quality staff.
  • NEXT-INSP: a calcuated field as: =[LAST-INSP]+[FREQ-IN-DAYS]
  • INSP-DUE: a calculated field as: =[NEXT-INSP]<=TODAY()

Normally this works as expected, but sometimes we see a “glitch” where the Inspection Due field does not change. For example, today I looked and found this

enter image description here

The highlighted row SHOULD have the INSP-DUE field set to YES because the Next Inspection date is equal to today, but it’s not updating properly.

Is there a known issue with calculated fields? Is there something I’m missing in my formula? Is the date field using local vs. UTC date/time? Is there a parameter in SP Online for calculated fields that I need to check?

Any help would be greatly appreciated.


NDSolve error: Cannot solve to find an explicit formula for the derivatives. Consider using the option Method->{“EquationSimplification”->”Residual”}

I get the above error message when running the following code:

\[Alpha]h = 0.2; \[Alpha]z = 0.2; \[Gamma] = 0.5; ph = 0.01; pf = \ 0.1; pE = 0.05; FC = 0.1; FE = 0.15; tC = 0.01; tE = 0; TC = 0.05; TE \ = -0.05; w = 1; \[Rho] = 0.2; \[Sigma] =   1/(1 - \[Rho]); L = 1; RA = 0.25; \[Mu] = 1;  G = 1; R0 = 0.1; S = 1;  v[s_] := \[Mu] Log[     Exp[(\[Alpha]h ((RC[s] +                ph)^(-(\[Rho]/\[Sigma]))  + (\[Alpha]h/\[Alpha]z)^(-(\ \[Rho]/\[Sigma])))^((           1 - \[Rho])/\[Rho]) (w + G + R0/L - (pf + tC) s - FC -              TC) - \[Gamma]  Integrate[            LogisticSigmoid[              x] ((\[Alpha]h/\[Alpha]z)^(-(\[Rho]/\[Sigma])) + (RC[x] +                   ph)^(-(\[Rho]/\[Sigma])) )/((RC[x] +                   ph)^-\[Sigma]   (w + G + R0/L - (pf + tC) x - FC -                   TC)), {x, s, S}])/\[Mu]] +       Exp[(\[Alpha]h ((RC[s] +                ph)^(-(\[Rho]/\[Sigma]))  + (\[Alpha]h/\[Alpha]z)^(-(\ \[Rho]/\[Sigma])))^((           1 - \[Rho])/\[Rho]) (w + G + R0/L - (pE + tE) s - FE -              TE) - \[Gamma]  Integrate[(1 -                LogisticSigmoid[                x]) ((\[Alpha]h/\[Alpha]z)^(-(\[Rho]/\[Sigma])) + (RC[                   x] + ph)^(-(\[Rho]/\[Sigma])) )/((RC[x] +                   ph)^-\[Sigma]   (w + G + R0/L - (pf + tC) x - FC -                   TC)), {x, s, S}])/\[Mu]]];  sol = FullSimplify[Solve[{D[v[s], s] == 0}, RC'[s]]] solprime = Equal @@@ Flatten[sol]; solND = NDSolve[{solprime[[1]], RC[S] == RA}, RC, {s, 0, S}] 

I have tried to add the proposed method and also Method->{“EquationSimplification”->”Solve”} but got other error messages then after quite some time of computation. Either “NDSolve::idelay: Initial history needs to be specified for all variables for delay-differential equations.” or “StringForm::sfr: Item 2 requested in “Delayed time 1 = 2 computed at 3 = 4 did not evaluate to a real number.” out of range; 1 items available.”

Any advice would be highly appreciated. Thanks!

How to handle excel formula references between workbooks kept on SharePoint?

posted this on SharePoint stackexchange but this seems more appropriate

Is there a recommended way to link workbooks that are kept in Sharepoint/Teams?

I have a setup where many different projects have a spreadsheet for tracking various items and then one central spreadsheet pulls certain data from each of those individual files and summarizes certain info.

Typically you can just have both files open and in the “summary” file start a formula and then go to the other spreadsheet and click in the cell you want to reference and all is well.

It seems to handle the fact that it is a Sharepoint file (synced locally) but the actual link that it uses seems to get broken as soon as you close the file(s). The next time you open the summary you have to recreate the link.

Is there a formula to get the total wins from odds combination?

Here is the problem: given a set of bets, how can I calculate the maximum possible wins of all combinations without looping through them?

I know how to get the number of combinations ($ \frac{n!}{r!(n – r)!}$ ) and I know how to get the powerset, so all the single combinations.

In order to calculate the total possible wins, I am currently looping through all the combinations, multiplying the odds together and then adding them all to the total.

As you know, though, combinations add up pretty quickly as I add more bets, so I will soon looping through thousands of combinations and my program slows down.

Now, before I start to optimise those loops and improve the UX, if there was a mathematical formula to calculate the max possible wins, the looping problems will instantly vanish.

I have searched extensively, but I couldn’t find anything. I might be lacking the proper mathematical terminology to actually find the answer I am looking for. But this looks like something mathematicians would have already solved, probably in different fields and with a specific name that I can’t find.

For this example, I will assume all stakes are 1, so it’s easier to handle.

3 bets with odds: 1,40 | 1,45 | 1,55 7 combinations (technically there is another combination where no bets are chosen, but we can skip that, because it wouldn’t add anything to the sum):

1,4 1,45 1,55 1,4*1,45 1,4*1,55 1,45*1,55 1,4*1,45*1,55 

If you round each calculation to two decimals, you get 14,00 (otherwise, 13,99).

Is there a formula to get to that result without looping through the powerset and calculating everything sequentially?

How to update this formula so it automatically updates?

First time on here, it’s come to my attention that GoogleClock no longer works on new sheets, anyway I can update the below code so it can update every minute.

Tried put =SheetNames(NOW()) it says not allowed. I’m very new to scripts (below script I found on here)

Help appreciated 🙂

function SheetNames() { // Usage as custom function: =SheetNames( GoogleClock() ) try { var sheets = SpreadsheetApp.getActiveSpreadsheet().getSheets() var out = new Array( sheets.length+1 ) ; //out[0] = [ “Name” , “gid” ]; for (var i = 3 ; i < sheets.length+1 ; i++ ) out[i-7] = [sheets[i-1].getName()]; return out } catch( err ) { return “#ERROR!”

SheetNames.flush(); } }