1

多年来,我一直在使用 Excel 图表来制作用于教授物理的计算机动画电影。但是,在从 VBA 转换为 AppleScript 时,我无法将图表保存为 .jpeg 文件。我试过下面的脚本:

tell application "Microsoft Excel"
 set filebasename to get value of cell "MovieName"
 activate object chart object filebasename of sheet 1
 set testfile to "test.jpg"
 save as picture active chart picture type save as JPG file file name testfile
end tell

但 AppleScript 编辑器告诉我活动图表不理解另存为图片指令。我的解决方法是使用脚本:

tell application "Microsoft Excel"
 set filebasename to get value of cell "MovieName"
 activate object chart object filebasename of sheet 1
 copy picture active chart appearance screen format picture
end tell

然后通过剪贴板进入 GraphicConverter 以获取 .jpeg 文件。

我在做什么傻事?

4

1 回答 1

0
tell application "Microsoft Excel"
    set theValue to get value of cell "A1"
    set myNewChartObject to make new chart object at sheet 1 with data theValue with properties {width:100.0, height:100.0}
    save as picture myNewChartObject picture type save as JPG file file name (((path to desktop folder) as text) & "myChart.jpg") as text
end tell

加盐调味。对这里有什么的小剖析......

make命令用于创建几乎所有类型的对象并为您返回创建的对象。activate没有,这可能是save as picture失败的原因,因为您没有要实际保存的对象。我冒昧地猜测active chart 命令执行是不够的,因为当前处于活动状态的对象可能会在您没有意识到的情况下发生变化。抓取对象,将其应用于变量,然后将其传递出去通常是一个好主意,因为这样您就知道必须使用什么。

于 2010-11-11T14:06:16.030 回答