Applescript只执行了我的一半代码

时间:2014-02-28 02:54:28

标签: excel applescript

我有两个简单的代码片段来编写Excel脚本,一个获取其他集合。

如果我将它们放在单独的脚本中,它们就像宣传的那样工作。如果我组合成一个脚本 - 按任意顺序 - 只执行第一个告诉应用程序“Microsoft Excel”代码块。当我在一个更复杂的脚本中有一个邮件代码块后跟一个Excel代码块时,我注意到这一点,有时第二个告诉应用程序块不运行(日志语句不会记录等)。并不总是,但足够的时候,这会让我感到沮丧。这里发生了什么?!实际上第二个问题,这个日志语句没有返回到脚本事件窗口中的任何内容,为什么我有时会看到日志而有时却没有。

tell application "Microsoft Excel"
tell active sheet
    tell range "A1:B3"
        return value
        log ("Running")
    end tell
end tell
end tell
tell application "Microsoft Excel"
tell active sheet
    tell range "A1:B3"
        set value to {{11, 12}, {21, 22}, {31, 32}}
    end tell
end tell
end tell

以下是看似相同问题的第二个例子:

tell application "Microsoft Excel"
tell active sheet
    (* tell range "A1:B3"
        return value
    end tell *)
    tell range "B1:B10"
        set value to {{23}, {2}, {13}, {2}, {2}, {4}, {5}, {7}, {9}, {100}}
    end tell
end tell
end tell

如果我取消注释它们将执行的三行代码,但是setter将不再执行它。请帮忙 - 疯了。

1 个答案:

答案 0 :(得分:1)

当你

return aValue

当前例程将在该点停止并返回该值。其余代码将不会执行。 而不是返回,你会想要使用像

这样的东西
set x to its value

然后使用x