简体   繁体   中英

Cannot edit numbers document with AppleScript

I am trying to run a very simple script in automator for a the apple program numbers. I have tried a couple of different scripts with no success.

With the following code:

on run {input, parameters}

    tell application "Numbers"
        activate

        tell document 1 to tell sheet 1 to set the value of cell "B3" to 0
        tell document 1 to tell sheet 1 to set the value of cell "C4" to 42

    end tell

    return input
end run

I get the following error message:

"Numbers got an error: Can't set cell "B3" of sheet 1 of document 1 to 0."

There was a nearly identical posted question with the following solution:

on run {input, parameters}

    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

    return input
end run

but this gives me the following error message:

"Numbers got an error: Can't set table 1 of document 1 to 1000."

This other post did mention it may have something to do with privileges but did not elaborate and I have been unable to find any more information regarding this.

Can anyone help me please?

Thank you.

With a Numbers document already opened, the following example AppleScript code works for me:

tell application "Numbers"
    activate
    tell first table of first sheet of front document
        set value of cell "B3" to 0
        set value of cell "C4" to 42
    end tell
end tell

Here is a different way of saying the same thing as the example AppleScript code above:

tell application "Numbers"
    activate
    set value of cell "B3" of table 1 of sheet 1 of document 1 to 0
    set value of cell "C4" of table 1 of sheet 1 of document 1 to 42
end tell

Note: The example AppleScript code is just that and does not contain any error handling as may be appropriate. The onus is upon the user to add any error handling as may be appropriate, needed or wanted. Have a look at the try statement and error statement in the AppleScript Language Guide . See also, Working with Errors . Additionally, the use of the delay command may be necessary between events where appropriate, eg delay 0.5 , with the value of the delay set appropriately.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM