Soy muy nuevo en AppleScript así que tened paciencia conmigo. Lo que estoy tratando de lograr es que cada vez que ejecute el script, el valor actual de una celda se copie en una celda, una columna a la derecha de cuando ejecuté por última vez el script, por lo que la primera vez pone el valor de A1 en B1, luego A1 en C1, luego A1 en D1 ect. ¿Cómo puedo hacer esto?
Respuesta
¿Demasiados anuncios?Esto se escribe más bien como un prueba de concepto para mostrar algo de lógica en el cumplimiento de la tarea. Puede haber una forma mejor de código pero en realidad no hago mucho AppleScript con Números Tal vez alguien más (CJK) pueda presentar algo diferente código .
Lo siguiente ejemplo AppleScript código se probó bajo MacOS High Sierra y Números , versión 5.1 (5683) con un valor por defecto documento utilizando el plantilla básica en blanco y como codificado funciona según lo mencionado en el OP. El ejemplo AppleScript código asume que Números ya se está ejecutando con la opción por defecto documento abierto.
Tal y como está codificado, con set n to 1
Si el valor de, por ejemplo, A1 no es valor que falta entonces el valor del próximo célula en que fila cuyo valor es valor que falta y luego obtiene el valor de la primera célula de eso fila . En este caso el valor de, por ejemplo, A1 .
Configuración set n to 2
y así sucesivamente, actúa en ese fila y el valor de eso filas primero célula , si no valor que falta , luego se pone en el valor del próximo célula de eso fila cuyo valor es valor que falta .
<strong>Nota: </strong>El ajuste o el cambio de <em>valor </em>de un <em>célula </em>no es <em>set </em>hasta <em>enfoque </em>se retira de ese <em>célula </em>. Esto ocurre normalmente cuando se pulsa un <em>clave </em>Por ejemplo, <em>ficha </em>, <em>entrar en </em>, <em>flecha </em>o al hacer clic en otra parte del <em>documento </em>con el ratón. Menciono esto para que cuando vayas a probar el <em>código </em>y escribiste algo, por ejemplo <strong>A1 </strong>, su <em>valor </em>sigue siendo <em>valor que falta </em>hasta <em>enfoque </em>se traslada a otro lugar.
tell application "Numbers"
set n to 1
tell row n of table 1 of sheet 1 of document 1
if the value of its first cell is not missing value then
set v to value of its first cell
set c to its cell count
set i to 2
set flag to true
repeat while flag is true and i is less than c + 1
if the value of cell n of column i is missing value then
set its value of cell n of column i to v
set flag to false
else
set i to i + 1
end if
end repeat
end if
end tell
end tell
Nota: El <em>ejemplo </em><strong>AppleScript </strong><em>código </em>es sólo eso y no contiene ningún otro <em>tratamiento de errores </em>según corresponda. Corresponde al usuario añadir cualquier <em>tratamiento de errores </em>como sea apropiado, necesario o deseado. Eche un vistazo a la <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_control_statements.html#//apple_ref/doc/uid/TP40000983-CH6g-129232" rel="nofollow noreferrer"><strong>pruebe con </strong></a><em>declaración </em>y <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_control_statements.html#//apple_ref/doc/uid/TP40000983-CH6g-129657" rel="nofollow noreferrer"><strong>error </strong></a><em>declaración </em>en el <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/introduction/ASLR_intro.html" rel="nofollow noreferrer"><strong>Guía del lenguaje AppleScript </strong></a>. Véase también, <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_error_xmpls.html#//apple_ref/doc/uid/TP40000983-CH221-SW1" rel="nofollow noreferrer"><strong>Trabajar con errores </strong></a>. Además, el uso de la <a href="https://developer.apple.com/library/archive/documentation/AppleScript/Conceptual/AppleScriptLangGuide/reference/ASLR_cmds.html#//apple_ref/doc/uid/TP40000983-CH216-SW10" rel="nofollow noreferrer"><strong>retraso </strong></a><em>comando </em>puede ser necesario entre eventos cuando sea apropiado, por ejemplo <code>delay 0.5</code> con el <em>valor </em>de la <em>retraso </em>ajustado apropiadamente.
0 votos
Bienvenido a Ask Different. Por favor, editar tu pregunta para incluir el script que tienes hasta ahora para que podamos intentar solucionar el problema.