CIAO,
Ho il seguente compito da svolgere.
Diciamo che ho 3 colonne: A,B,C
Ciascuna cella nella colonna A ha il seguente formato: 29;30;28;27;30; ...
Quindi solo numeri casuali separati da ;
Ogni cella nella colonna B ha il seguente formato: 4;5;1;3;6; ...
Quindi questi sono numeri compresi tra 1 e 25 (senza ripetizione) in ordine casuale, separati da ;
Col C è un numero singolo compreso tra 1 e 25, ad esempio 3.
Per ogni riga, Col A e Col B hanno lo stesso numero di termini tra ";" (non deve essere lo stesso in righe diverse).
E ora passiamo al compito: voglio creare una nuova colonna D, che contiene il valore di Col A trovato nella posizione di Col C in Col B.
Ad esempio, se
Col A = 29;30;28;27;30
Col B = 4;5;1;3;6
Col C = 3
Quindi Col D = 27
Perché 3 si trova nella 4a posizione nel Col B (dopo il 3°
, e nella stessa posizione nel Col A puoi trovarne 27.
Spero di averlo spiegato chiaramente, apprezzerei qualsiasi aiuto. Si prega di consultare il file allegato ad esempio (ho calcolato manualmente Col D per l'esempio).
Grazie
Dovrebbe essere abbastanza semplice da usare Parole() e contiene() .
Num(Words(:A, ";")[Contains(Words(:B, ";"), Char(:C))]);

Vedere l'indice di script per ulteriori esempi su queste funzioni
Ecco un modo per farlo

theList = Words( :B, ";" );
location = Contains( theList, Char( :C ) );
Show( theList, location );
Try( Num( Word( location, :A, ";" ) ), . );