Cerco una formula per accedere al cambiamento nel tempo a livello di riga spostandosi da sinistra a destra. Voglio valutare lo spostamento percentuale dalla prima lettura alla successiva e quindi valutare tutte le letture successive rispetto alla prima e alla lettura precedente per accedere allo spostamento nel tempo. Se ci sono spostamenti verso il basso maggiori o uguali al 20%, indicare 1 in una colonna di risultati.
Ecco una formula che trova il primo spostamento percentuale, quindi esamina tutte le colonne rimanenti e trova i valori ed effettua una modifica percentuale rispetto al valore iniziale e, se si tratta di una modifica negativa > 20%, imposta il risultato su 1.
Sono abbastanza sicuro che non sia esattamente ciò che stai cercando. Non capisco cosa significhi esattamente "e quindi valutare tutte le letture successive rispetto alla prima e alla lettura precedente per accedere al turno straordinario". Studia il mio codice e guarda cosa sta facendo, quindi vedi se puoi modificarlo per fare esattamente ciò che vuoi veramente. In caso contrario, rispondi con qualche chiarimento o domanda sul mio JSL.
As Constant( dt = Current Data Table() );
theMatrix = dt[Row(), Index( 2, 23 )];
start = Loc( theMatrix )[1] + 1;
startVal = dt[Row(), start];
firstChange = .;
currentChange = .;
firstValue = .;
For( i = start, i <= 22, i++,
If(
Is Missing( dt[Row(), i] ) == 0 & Is Missing( firstValue ) == 1, firstValue = dt[Row(), i],
Is Missing( dt[Row(), i] ) == 0 & Is Missing( firstChange ) == 1,
firstChange = (dt[Row(), i] - firstValue) / firstValue,
Is Missing( dt[Row(), i] ) == 0 & Is Missing( firstChange ) == 0,
currentChange = (dt[Row(), i] - firstValue) / firstValue;
If( currentChange < -0.2,
currentChange = 1;
break(),
currentChange = .
);
)
);
currentChange;