Estoy tratando de escribir un script de números (para hacer esto , como sucede), en el que necesito cambiar el valor de una celda.
Sin embargo, si hago algo como
tell application "Numbers"
activate
tell document 1
tell sheet 3
set the value of cell "E1" to 1000
end tell
end tell
end tell
entonces me sale el error
error "Numbers got an error: Can’t set cell \"E1\" of sheet 3 of document 1 to 1000." number -10006 from cell "E1" of sheet 3 of document 1
pero esto no contiene información sobre por qué no puede configurar esa celda. El documento, la hoja y la celda existen.
Supongo que esto podría depender de mi hoja de cálculo en particular, pero ¿es esta la forma correcta de establecer el valor de una celda y, de ser así, qué más puedo hacer para entender por qué no funciona?
Estoy nuevamente frente a una Mac y probé su código y también obtuve el mismo error, por lo que probablemente sea algo engañoso en términos de lo que realmente significa.
Sin embargo, jugué un poco con su secuencia de comandos y pude hacer que el código funcionara usando el siguiente código:
tell application "Numbers"
tell table 1 of sheet 3 of document 1
set the value of cell 1 of column "E" to 1000
end tell
end tell
Sin embargo, ahora que tengo esto funcionando, solo quería señalar que parece que está codificando la celda con dificultad, etc. Es decir, si la posición cambia, el script no será dinámico. Si esto es un problema para usted o no, dependerá de lo que intente hacer y de cómo esté diseñada su hoja de cálculo de Numbers.
Hazlo con una sola línea. No es necesario contar anidados.
tell application "Numbers" to set document 1's sheet 1's table 1's cell "E1"'s value to 1000
O una solución más genérica de:
set documentName to "Document 1"
set sheetName to "Sheet 1"
set tableName to "Table 1"
set cellName to "D1"
set newvalue to "2000"
tell application "Numbers" to set document documentName's sheet sheetName's table tableName's cell cellName's value to newvalue
Monomeeth
N. Virgo
N. Virgo
N. Virgo
N. Virgo
error "Numbers got an error: Can’t get cell \"A1\" of sheet 1 of document 1." number -1728 from cell "A1" of sheet 1 of document 1
(editaré todo esto en la pregunta más adelante)N. Virgo
tell document named "my document"
en lugar detell document 1
. Recibo el mismo error si uso un nombre de documento inexistente.Monomeeth