"There was a lot of support given with this formula so I'm not too sure how it all works at the moment but I know it works!" 😅
Here is the code for (OnHidden):
Set(randletter,First(Shuffle(Letters)).Result);Set(randletter1,First(Shuffle(Filter(Letters,Result<>randletter))).Result);Set(randletter2,First(Shuffle(Filter(Letters,Result<>randletter,Result<>randletter1))).Result);Set(randletter3,First(Shuffle(Letters)).Result)
Here is the code I for (OnVisible):
ClearCollect( Letters, Split( "ABCDEF", "" ) ); ClearCollect( Letters1, Split( "ABCDEF", "" ) ); ClearCollect( Letters2, Split( "ABCDEF", "" ) ); ClearCollect( Letters3, Split( "ABCDEF", "" ) ); UpdateContext({UpperCaseValue: ""}); Set( randletter, First(Shuffle(Letters)).Result ); Set( randletter1, First( Shuffle( Filter( Letters, Result <> randletter ) ) ).Result ); Set( randletter2, First( Shuffle( Filter( Letters, Result <> randletter, Result <> randletter1 ) ) ).Result ); Set( randletter3, First(Shuffle(Letters)).Result )
I just need 3 new labels to reflect the 3 original letters generated (OnVisible) that will not change if the original 3 are selected. The idea being that the app will submit the original letters generated along side the new letters.
When the data is submitted the process will reset and repeat.