Hola,
Tengo la siguiente tarea que hacer.
Digamos que tengo 3 columnas: A,B,C
Cada celda de la Col A tiene el siguiente formato: 29;30;28;27;30; ...
Entonces solo números aleatorios separados por ;
Cada celda de la Col B tiene el siguiente formato: 4;5;1;3;6; ...
Entonces estos son números en el rango del 1 al 25 (sin repetirse) en orden aleatorio, separados por ;
Col C es un número único en el rango del 1 al 25, por ejemplo 3.
Para cualquier fila determinada, la Col A y la Col B tienen el mismo número de términos entre ";" (no tiene que ser igual en diferentes filas).
Y ahora a la tarea: quiero crear una nueva columna D, que contenga el valor de la Col A que se encuentra en la ubicación de la Col C en la Col B.
Por ejemplo, si
Col A = 29;30;28;27;30
Col B = 4;5;1;3;6
Col C = 3
Entonces Col D = 27
Porque 3 se encuentra en la cuarta ubicación en la Col B (después de la 3;), y en la misma ubicación en la Col A puedes encontrar 27.
Espero haberlo explicado claramente, agradecería cualquier ayuda. Consulte el archivo adjunto, por ejemplo (calculé Col D manualmente para el ejemplo).
Gracias
Debería ser bastante simple usando Palabras() y Contiene() .
Num(Words(:A, ";")[Contains(Words(:B, ";"), Char(:C))]);

Consulte el índice de secuencias de comandos para obtener más ejemplos sobre esas funciones.
Aquí hay una manera de hacerlo

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