У меня есть лист Numbers длиной в тысячи строк. В качестве примера на изображении лист имеет два столбца с URL-адресами. Что мне нужно сделать, так это найти строки с одинаковым URL-адресом в двух соседних ячейках, а затем изменить цвет фона этой строки, чтобы я мог идентифицировать строки и удалить их; или напишите слово «dupe» в столбце C. В примере строка 4 имеет один и тот же URL-адрес в двух ячейках. Как бы я помечал или помечал такие строки на всем листе? С расчетом? Или Applescript/Automator?
Вот метод AppleScript, который демонстрирует три различных типа действий, выполняемых над строками с повторяющимися записями ячеек в columns "A"
и "B"
(эквивалентно cells 1
и 2
):
use N : application "Numbers"
--------------------------------------------------------------------------------
# PROPERTY VALUES & GLOBAL VARIABLES
property document : a reference to document 1 of N
property sheet : a reference to active sheet of my document
property table : a reference to table 1 of my sheet
global them
--------------------------------------------------------------------------------
# IMPLEMENTATION:
on run
if not (exists my table) then return false
set them to a reference to (every row of my table ¬
where the value of cell 1 = the value of cell 2 ¬
and the value of cell 1 ≠ missing value)
highlight()
---OR:
-- comment()
--OR:
-- delete -- WARNING: permanent!
end run
--------------------------------------------------------------------------------
# HANDLERS:
to highlight()
set the background color of them to ¬
{65535, 65535 / 4, 65535 / 2}
end highlight
to delete
delete them
end delete
to comment()
set the value of cell 3 of them to "SNAP!"
end comment
---------------------------------------------------------------------------❮END❯
Я определил три обработчика, highlight()
, comment()
и delete
, каждый из которых при вызове будет выполнять определенное действие над интересующими строками. В настоящее время вы можете видеть в скрипте несколько строк в разделе с пометкой, IMPLEMENTATION:
что я установил его в настоящее время для выполнения highlight()
действия, которое изменит цвет фона определенных строк на оттенок розового, который мне нравится.
Ниже этой строки находятся команды, которые я закомментировал с помощью --
, поэтому в настоящее время они остаются инертными. При раскомментировании comment()
обработчик будет вводить слово "SNAP!"
в третий столбец каждой интересующей строки; и delete
команда (обратите внимание на отсутствие круглых скобок для этого) просто полностью удалит строки. Я пометил это предупреждением, которое подразумевает безвозвратное удаление, хотя, по правде говоря, вы можете восстановить строки, используя встроенный пункт меню «Отменить» приложения , или ⌘Z(по одному!)
пользователь3439894
IF(A2=B2,"DUPE","")
новую формулу в C2... затем, выбрав C2, нажмите Command-C, чтобы скопировать формулу... затем прокрутите вниз до последнюю строку, содержащую информацию, и нажмите клавишу Shift, щелкнув последнюю ячейку в столбце C, чтобы выбрать диапазон, и нажмите Control-C, чтобы вставить формулу. Теперь, когда в столбце C есть «DUPE», где это уместно, я бы затем отсортировал лист в столбце C, выделил строки с «DUPE» и удалил их. Затем выберите столбец C и нажмите «Удалить», чтобы удалить формулу.пользователь3439894
СинийСобакаРанчо
пользователь3439894