在Microsoft Excel中,我正在尝试使用AppleScript隐藏与简单查询匹配的一堆行:如果列F的值为0.0 。我有它的工作,但脚本必须遍历每个匹配以隐藏它,这比我想要的慢 - 而且不那么优雅:
tell application "Microsoft Excel"
tell used range of active sheet of active workbook
set row_references to ((every row whose value of cell 6 is 0.0))
repeat with current_row in row_references
set hidden of entire row of current_row to true
end repeat
end tell
end tell
我真正喜欢的是,如果我只使用一个Apple Event隐藏每一行:
tell application "Microsoft Excel"
tell used range of active sheet of active workbook
set hidden of (entire row of (every row whose value of cell 6 is 0.0)) to true
end tell
end tell
...但是这会抛出一个错误:“无法将单元格6 = 0.0的值的活动工作簿的活动工作表的每一行的整行中的整行隐藏为真。”
如果我使用“删除”动词,我可以做一些接近我所追求的事情:
tell application "Microsoft Excel"
tell used range of active sheet of active workbook
delete (every row whose value of cell 6 is 0.0)
end tell
end tell
这只是一举删除每个匹配的行,不需要循环。
(请注意,我必须在前两个示例中使用“整行”引用,因为只有将整个行或列指定为范围时,“hidden”属性才有效.direct命令没有这个要求。)
所以我的问题是:我正在尝试做甚么可能吗?为什么“删除”动词没有问题,但它似乎不喜欢“设置”?
感谢。