Tout d'abord... Je suis très nouveau dans le domaine des scripts et je travaille actuellement dans l'éditeur de formules. J'essaie de faire quelque chose que je pensais être assez simple...
J'ai deux colonnes de données. La première colonne contient des valeurs d'état qui sont les mêmes pendant une période de temps, puis changeront et resteront à nouveau constantes pendant une période de temps. Par exemple...
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
DÉSACTIVÉ
SUR
SUR
SUR
etc.
Dans la deuxième colonne, je voudrais incrémenter un nombre chaque fois que le statut change. Ainsi, dans l'exemple ci-dessus, les OFF seraient 1, les ON seraient 2, la prochaine série de OFF serait 3, etc.
En ce moment, je suis en train de mettre en place une instruction conditionnelle quelque chose comme ceci...
Si ( :État C1[ Rangée ()] == :C1 Statut[ Rangée () + 1 ],
:X,
:x = :x + 1
)
Où C1 Status est la ligne OFF/ON. J'ai configuré x comme variable de table initialement égale à 1,
Mais je reçois une sorte d'avertissement de cycle et cela n'augmente pas.
Toute aide serait appréciée.
Brillant! A fonctionné à merveille. Merci!
Salut Scott,
J'ai tendance à utiliser la fonction LAG pour ce type d'opération comme indiqué ci-dessous :
If( Row() == 1,
1,
If( :C1== Lag( :C1, 1 ),
Lag( :PERIOD, 1 ),
Lag( :PERIOD, 1 ) + 1
)
)
Ce n'est pas aussi élégant mais c'est fiable.
Meilleur,
TS