Получение текущей таблицы в номерах (Python/Appscript)
Вопрос
Как получить доступ к текущей таблице в числах, используя py-appscript
?
Для потомства программа, которую я создал с использованием этой информации, очищает все ячейки текущей таблицы и возвращает выбор в ячейку A1
. Анкет Я превратил его в службу, используя скрипт оболочки Python Run в Automator и прикрепил его к номерам.
from appscript import *
Numbers = app('Numbers')
current_table = None
for sheet in Numbers.documents.first.sheets():
for table in sheet.tables():
if table.selection_range():
current_table = table
if current_table:
for cell in current_table.cells():
cell.value.set('')
current_table.selection_range.set(to=current_table.ranges[u'A1'])
Он использовался для очистки больших таблиц чисел, которые я использовал для временных расчетов.
Решение
>>> d = app('Numbers').documents.first() # reference to current top document
РЕДАКТИРОВАТЬ: Похоже, нет прямой единой ссылки на текущую таблицу, но, похоже, вы можете найти ее, выполнив поиск в листы текущего первого документа для таблицы с не-нулевым selection_range, так что что-то вроде этого:
>>> nu = app('Numbers')
>>> for sheet in nu.documents.first.sheets():
... for table in sheet.tables():
... if table.selection_range():
... print table.name()
Не связан с StackOverflow