ДИНАМИЧЕСКИЕ ПОРОГИ ДЛЯ УСЛОВНЫХ ФОРМАТОВ
DYNAMIC THRESHOLDS FOR CONDITIONAL FORMATS

УРОВЕНЬ ТЕХНИКИ
Методики визуализации данных дают возможность пользователям данных просматривать и быстро воспринимать большие количества информации. Такие методики также могут помочь при оповещении пользователей об аномалиях и других интересующих данных. Инструментальные средства визуализации могут включать в себя диаграммы, графики и отчеты, которые собирают, объединяют и/или иным образом преобразовывают данные в выразительные формы, цвета и графические шаблоны. Ближе к теме, визуализация данных также включает в себя использование условного форматирования в электронных таблицах, которые часто служат в качестве хранилищ первичных данных.
Условное форматирование дало возможность пользователям модифицировать вид данных на месте, изменяя внешний вид отдельной электронной таблицы или ячеек таблицы на основе информационного содержания ячейки (или некоторого другого определяющего условия). Фиг. 1 изображает диапазон ячеек 101 предшествующего уровня техники в электронной таблице, ячейки которой были условно форматированы. Здесь ячейка A1 представляет пример значения по умолчанию или неформатированной версии ячейки. Ячейка A2 представляет пример первой условно форматированной ячейки и ячейка A4 представляет пример второй условно форматированной ячейки. Ячейки A2 и A4 автоматически приняли новое форматирование на основе условия, привязанного к ячейкам.
Фиг. 2 изображает диалоговое окно 201 предшествующего уровня техники, в котором были выбраны форматы, обусловленные значениями, находящимися в пределах некоторых диапазонов. Эти два заданных здесь условия (и примененных к диапазону ячеек 101) форматируют ячейки специфическим образом, когда значение, содержащееся в каждой ячейке, принимает значение, находящееся внутри некоторого диапазона (между 10 и 20 для условия 1, между 15 и 30 для условия 2). Условия, используемые при условном форматировании, ограничены двумя возможными булевыми выходными значениями ИСТИНА или ЛОЖЬ. Если заданное условие принимает значение ИСТИНА, то форматирование применяется. Если заданное условие принимает значение ЛОЖЬ, то форматирование не применяется.
Диалоговое окно 201 демонстрирует, что хотя условное форматирование является полезным, оно может ограничиваться некоторыми доступными форматами (например, шрифт, цвет ячейки, границы). Кроме того, заданному диапазону ячеек предоставляется максимальное количество условных форматов, которые могут быть применены, безусловно, не более трех условий, каждое из которых обеспечивает не более одного возможного формата, когда оно принимает значение ИСТИНА. Кроме того, пороговые значения, используемые для вычисления значения, являются фиксированными. Эти ограничения препятствуют тому, чтобы условно форматированные ячейки полностью реализовали свой потенциал в качестве средства анализа и предоставления отчетов.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Это описание сущности изобретения дано для того, чтобы в упрощенной форме представить выбор концепций, которые далее описаны в подробном описании. Это описание сущности изобретения не предназначено для выявления ключевых признаков заявленного объекта, а также не предназначено для использования в качестве помощи в определении объема заявленного объекта.
В общих чертах, варианты осуществления настоящего изобретения предоставляют возможность использовать динамические пороги и динамические пороговые значения при формировании правил переменного форматирования, которые должны быть применены к диапазону ячеек. В соответствии с одним аспектом обеспечивается машиночитаемый носитель, имеющий машиноисполняемые компоненты для определения динамических пороговых значений для переменного форматирования диапазона ячеек. Машиночитаемый носитель содержит компонент команды переменного формата, компонент типа порога и компонент динамического порогового значения. Компонент команды переменного формата поддерживает переменный формат, который применяется к диапазону ячеек, и компонент типа порога выявляет типы порогов, включенные в переменный формат, который использует динамическое пороговое значение. Как рассмотрено ниже, типы порогов, которые используют динамические пороговые значения, включают в себя, но без ограничения, наибольшее значение, наименьшее значение, среднее значение, процентиль, процент и формулу. Компонент динамического порогового значения определяет значение, которое должно быть использовано в качестве динамического порогового значения. Значение определяется из значений, содержащихся во множестве ячеек, которые могут являться диапазоном ячеек или ячейками вне диапазона ячеек.
В соответствии с другим аспектом обеспечивается способ определения динамического порогового значения. Способ содержит этапы, на которых выявляют диапазон ячеек, для которых должно быть определено динамическое пороговое значение, и вычисляют значения, содержащиеся в диапазоне ячеек, для выявления значения, отвечающего требованию типа порога. Выявленное значение выбирается в качестве динамического порогового значения для типа порога.
В соответствии с другим аспектом обеспечивается реализованный с помощью компьютера способ форматирования диапазона ячеек с использованием переменных форматов. Реализованный с помощью компьютера способ содержит этап, на котором определяют переменный формат, который должен быть применен к диапазону ячеек. Определенный переменный формат включает в себя пороговую точку, имеющую тип порога. Кроме того, тип порога использует динамическое пороговое значение в качестве значения для типа порога. Динамическое пороговое значение определяется на основе типа порога и на основе значений, содержащихся в диапазоне ячеек.
ОПИСАНИЕ ЧЕРТЕЖЕЙ
Предшествующие аспекты и многие из сопутствующих преимуществ этого изобретения станут более понятны из последующего подробного описания, взятого совместно с сопроводительными чертежами, на которых:
Фиг. 1 изображает пример предшествующего уровня техники для диапазона условно отформатированных ячеек в электронной таблице;
Фиг. 2 изображает пример предшествующего уровня техники для диалогового окна для условного форматирования ячеек;
Фиг. 3A изображает диапазон ячеек, отформатированных с использованием переменного форматирования со стилем цветовой шкалы в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 3B изображает диалоговое окно ввода, с помощью которого пользователь может определить параметры переменного форматирования для фиг. 3A в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 4A изображает диапазон ячеек, отформатированных с использованием переменного форматирования со стилем гистограммы в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 4B изображает диалоговое окно ввода, с помощью которого пользователь может определить параметры переменного форматирования для фиг. 4A в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 5A изображает диапазон ячеек, отформатированных с использованием переменного форматирования со стилем значков в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 5B изображает диалоговое окно ввода, с помощью которого пользователь может определить параметры переменного форматирования для фиг. 5A в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 6A изображает диапазон ячеек, отформатированных с использованием другого вида переменного форматирования со стилем цветовой шкалы в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 6B изображает диалоговое окно ввода, с помощью которого пользователь может определить параметры переменного форматирования для фиг. 6A в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 7 - блок-схема последовательности операций, изображающая способ применения переменного формата к диапазону ячеек в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 8 - блок-схема последовательности операций программы динамического порога для применения динамических порогов к диапазону ячеек в соответствии с одним или более вариантами осуществления настоящего изобретения;
Фиг. 9 - блок-схема последовательности операций подпрограммы вычисления типа динамического порога для вычисления динамических порогов, которые используют динамическое значение в качестве порогового значения, в соответствии с одним или более вариантами осуществления настоящего изобретения.
ПОДРОБНОЕ ОПИСАНИЕ
Форматы не должны вычисляться только с использованием значений ИСТИНА или ЛОЖЬ в качестве определяющего результата. Вместо этого применяемые форматы ячеек могут изменяться в зависимости от привязанного значения (например, значения в самой ячейке), обеспечивая больше форматов, которые могут являться более выразительными для пользователя. Форматы могут быть применены к диапазону ячеек, причем значение формата определяется для каждой ячейки в диапазоне, и один или более аспектов формата изменяются на основе значения формата. Например, по мере увеличения значения в ячейке регулируется цвет или оттенок фона, или растет размер столбца гистограммы в ячейке, или изменяется выбор значка в ячейке. Кроме того, само значение формата может являться динамическим в том смысле, что оно определяется на основе вычисления значений, содержащихся в диапазоне ячеек, или вычисления формулы.
Фиг. 3A изображает диапазон ячеек 301, отформатированных с использованием переменного форматирования со стилем цветовой шкалы. Вместо того, чтобы ограничиваться тремя форматами вывода (то есть тремя условиями с одним форматом на каждое условие), ячейки имеют примененный переменный формат, который может создать любое количество различных форматов ячеек. Ячейки в диапазоне 301 имеют значения, которые упорядочены от наименьшего до наибольшего. В этом случае значение, содержащееся в каждой ячейке, используется для определения фоновой заливки, которая применяется к каждой ячейке. В этом примере три плотности штриховки указаны для двух конечных точек и средней точки. Для значений, попадающих между этими точками, вычисляются промежуточные штриховки. Значения конечных точек в диапазоне хранятся в ячейках A1 и A15. Фоновая заливка для каждой ячейки варьирует от плотной штриховки (A1) до штриховки (А8) средней плотности и до штриховки (A15) низкой плотности. Ячейки A2-A7 имеют фоновую штриховку, примененную посредством линейного изменения плотности между плотной штриховкой и штриховкой средней плотности. Ячейки A9-A14 имеют фоновую штриховку, примененную посредством линейного изменения плотности между штриховкой средней плотности и штриховкой низкой плотности.
Хотя примеры, приведенные здесь для фоновой заливки, используют штриховку, может быть применен любой тип и формат фоновой заливки в соответствии с одним или более вариантами осуществления настоящего изобретения. Например, фоновая заливка может быть применена с использованием изменения оттенков цветов. В одном примере наименьшему значению в качестве фоновой заливки может быть присвоен красный цвет, среднему значению в качестве фоновой заливки может быть присвоен желтый цвет, и наибольшему значению в качестве фоновой заливки может быть присвоен зеленый цвет. Всем ячейкам со значениями, попадающими между этими диапазонами, в качестве фоновой заливки может быть присвоен переменный оттенок этих цветов на основе соответствующего значения ячейки.
Фиг. 3B изображает диалоговое окно 302 ввода переменного формата, с помощью которого пользователь может определить параметры переменного формата для диапазона 301 ячеек. Диалоговое окно 302 ввода может представлять собой часть большего диалогового окна. При создании переменного формата пользователь может сначала выбрать диапазон 301 ячеек. Затем пользователь может выполнить запрос или команду для применения переменного формата, вызывая отображение диалогового окна 302 ввода переменного формата. Пользователь может выбрать стиль 303 формата, в данном случае "Трехцветная шкала". Когда стиль 303 выбран, соответствующие поля ввода позволяют пользователю определить параметры переменного формата, который должен быть применен.
Для трехцветной шкалы поля ввода позволяют пользователю определять тип порога, используемый для присвоения форматов ячейкам в диапазоне ячеек. Он определяется с использованием раскрывающегося списка 305 "Тип" для каждой из пороговых точек "Минимум" 305A, "Середина" 305B и "Максимум" 305C. Раскрывающийся список 305A типа для точки "Минимум" может предоставить варианты выбора типа порога, включающие в себя, но без ограничения, "Наименьшее значение", "Число", "Процент", "Процентиль" и "Формулу". Раскрывающийся список 305B типа для точки "Середина" может предоставить варианты выбора типа порога, включающие в себя, но без ограничения, "Среднее значение", "Число", "Процент", "Процентиль" и "Формулу". Раскрывающийся список 305C типа для точки "Максимум" может предоставить варианты выбора типа порога, включающие в себя, но без ограничения, "Наибольшее значение", "Число", "Процент", "Процентиль" и "Формулу".
Для типа "Наименьшее значение", который может использоваться только с пороговой точкой "Минимум", система вычислит все значения в выбранном диапазоне ячеек и динамически выберет наименьшее значение в качестве порогового значения для точки "Минимум". Для типа "Наибольшее значение", который может использоваться только с пороговой точкой "Максимум", система вычисляет и динамически выбирает наибольшее значение, содержащееся в диапазоне ячеек, в качестве порогового значения для точки "Максимум". Аналогичным образом, для типа "Среднее значение", который может использоваться только с пороговой точкой "Середина", система вычисляет и динамически выбирает среднее значение, содержащееся в диапазоне ячеек, в качестве порогового значения для точки "Середина". Динамический выбор пороговых значений более подробно описан со ссылкой на фиг. 8 и 9.
Для варианта "Число" пользователь фактически присваивает пороговое значение, которое должно использоваться при вычислении диапазона ячеек. Если пользователь выбирает вариант "Число", он или она вводит пороговое значение, которое будет привязано, в поле ввода ниже раскрывающегося списка. Если пользователь выбирает вариант "Число" для всех трех столбцов, то введенные значения могут быть проверены, чтобы, например, гарантировать, что значение для точки "Минимум" меньше значения для точки "Середина", которое, в свою очередь, меньше значения для точки "Максимум".
Для типа "Процент" пользователь может ввести процент для привязки к фоновой заливке диапазона ячеек. В качестве альтернативы система может вычислить значение процента на основе пороговой точки и значений, содержащихся в выбранном диапазоне ячеек. Значения процента соответствуют точке разности между минимальным значением и максимальным значением в диапазоне выбранных ячеек. Система может вычислить все значения в диапазоне ячеек, чтобы определить вычисленный процент для пороговой точки, и определить фоновую заливку, которая должна быть применена к выбранному диапазону ячеек. Например, если значения в выбранном диапазоне ячеек составляют от 0 до 200, то значение "25%" будет соответствовать значению 50. Если оно вычислено для пороговой точки "Минимум", значение 50 будет являться вычисленным пороговым значением точки "Минимум", и всем ячейкам, имеющим значения меньше 50, присваивается одна и та же фоновая заливка, которая присвоена точке "Минимум".
Тип "Процентиль" отличается от типа "Процент" тем, что он не определяет проценты в диапазоне значений. Вместо этого вариант "Процентиль" исследует набор значений, содержащихся в ячейках, упорядочивает их и использует их порядковый номер или позицию в наборе упорядоченных значений, чтобы определить их процентиль. В наборе из десяти упорядоченных ячеек 40-м процентилем всегда будет являться четвертая ячейка независимо от значения, содержащегося в ней. Если пользователь выберет вариант "Процентиль" и введет значение 40, то ячейке с 40-м процентилем будет присвоен привязанный цвет. В качестве альтернативы система может динамически вычислить значение процентиля на основе пороговой точки и значений, содержащихся в выбранном диапазоне ячеек. Система может вычислить все значения в диапазоне ячеек, упорядочить их и использовать их порядковые номера или позицию в наборе упорядоченных значений для вычисления значения на основе рассматриваемой пороговой точки. Например, если имеется десять упорядоченных ячеек, то пятая ячейка всегда будет являться 50-м процентилем, если вычисляемая пороговая точка является "Серединой", то значение из пятой ячейки, то есть, 50-го процентиля, будет являться вычисленным пороговым значением.
Наконец, тип "Формула" позволяет пользователю вводить формулу в поле 307 ввода значения. В большинстве случаев значение, используемое для форматирования ячейки, является тем же самым, что и значение в ячейке. Однако в данном случае вычисляется формула для определения значения, которое должно быть использовано в качестве порогового значения. Значение ячейки сравнивается с установленным пороговым значением, и ячейка форматируется соответствующим образом. Пользователь может создать формулу с использованием функций, ссылок на ячейки (в пределах или вне диапазона выбранных ячеек), операторов и т.д. для получения порогового значения. Как отмечено выше, могут быть использованы другие типы значений и алгоритмы, чтобы дать пользователю возможность привязать диапазон ячейки к конкретным форматам.
Когда выбран тип 305 для каждой из трех интересующих пороговых точек, вычислено или введено пороговое значение 307 и выбрана фоновая заливка, пользователь может осуществить взаимодействие с командой переменного форматирования, чтобы применить ее к выбранному диапазону ячеек. Прежде чем принять команду, система может проверить правильность введенных значений, чтобы удостовериться, что значение для точки "Минимум" меньше значения для точки "Середина", которое меньше значения для точки "Максимум". Однако такая проверка правильности может быть невозможна до некоторого более позднего момента, если значения не являются известными сразу, например, когда в качестве одного или более пороговых значений используется формула.
Если все пороговые значения имеют один и тот же тип, кроме формулы, система может проверить что, значение для точки "Минимум" меньше значения для точки "Середина", которое меньше значения для точки "Максимум". Если пороговые значения имеют смешанный тип или все являются формулами, система не может выполнить проверку, чтобы гарантировать, что значение для точки "Минимум" меньше значения для точки "Середина", которое меньше значения для точки "Максимум". Однако, когда условия вычисляются для применения фоновой заливки к выбранному диапазону ячеек и система встречает случай, в котором значение для точки "Минимум" больше значения для точки "Середина", в котором значение для точки "Минимум" больше значения для точки "Максимум" или в котором значение для точки "Середина" больше значения для точки "Максимум", система может переупорядочить пороговые значения в порядке возрастания. Например, если пороговые значения являются динамическими и вычислены таким образом, что значение для точки "Минимум", значение для точки "Середина" и значение для точки "Максимум" равны соответственно 500, 10 и 50, система может переупорядочить значения так, чтобы 10 было значением для точки "Минимум", 50 было значением для точки "Середина", и 500 было значением для точки "Максимум". Фоновая заливка, привязанная к каждой пороговой точке, может быть переупорядочена соответствующим образом или может быть не переупорядочена.
Кроме того, если два или более динамических пороговых значения принимают одинаковое значение, может быть указано, что к ячейкам, содержащим это значение, применяется фоновая заливка, привязанная к более высокой пороговой точке. В качестве альтернативы система может уведомить пользователя и дать пользователю возможность изменить пороговые значения и/или определить, какая фоновая заливка должна быть применена.
Когда переменный формат применен, изменения значений в выбранном диапазоне ячеек или, в случае порогов типа "Формула", в любых других ячейках, на которых основана пороговая оценка, может вызвать обновление форматирования в некоторых вариантах осуществления. Если значение изменяется и становится новым "наименьшим значением", тогда в соответствии с этим может быть динамически скорректировано все форматирование. Аналогично, если дополнительная ячейка вставляется в диапазон ячеек, это может изменить проценты, процентили, формулы и т.д., и заставить систему вычислить и, возможно, скорректировать фоновые заливки, применяемые к диапазону ячеек.
Фиг. 4A изображает диапазон 401 ячеек, отформатированных с использованием переменного форматирования со стилем гистограммы. Гистограммы могут быть изображены в ячейках и могут обеспечивать визуальный признак для пользователей, указывая большие и меньшие значения в диапазоне. Гистограммы в каждой ячейке имеют длину, которая определяется на основе значения в ячейке и порогов, применяемых к диапазону ячеек. Например, ячейки A1 и A11 содержат самые короткие столбцы гистограммы, соответствующие значениям 6 и 4. Ячейки A4 и A13 имеют самые длинные столбцы гистограммы, соответствующие значениям 25 и 28. Хотя показанные здесь гистограммы отображаются как заполненные градиентом штриховки, могут быть отображены другие типы гистограмм, в том числе сплошные гистограммы, гистограммы с графическими шаблонами и т.д.
Кроме того, хотя здесь описаны горизонтальные гистограммы, могут быть использованы другие типы динамически измененяемых форм в ячейке, каждый из которых имеет аспект, изменяющийся в зависимости от значения формата для ячейки. Примеры могут включать в себя круговую диаграмму с автоматически корректируемой секцией, вертикальную гистограмму и т.д. Кроме того, гистограммы могут быть объединены с описанным выше форматированием фона таким образом, что плотность штриховки гистограммы изменяется на основе того же самого значения формата или, возможно, с использованием другого значения формата (например, формулы), отличающегося от используемого для определения длины столбца гистограммы.
Фиг. 4B изображает диалоговое окно 402 ввода, с помощью которого пользователь может определить параметры переменного формата для диапазона 401 ячеек. В данном случае в качестве стиля 403 формата для диапазона 401 ячеек был выбран стиль "Гистограмма", который предоставляет два порога: "Самый короткий столбец" и "Самый длинный столбец". Диалоговое окно 402 позволяет пользователю установить типы 405 формата и значения 407, которые будут использоваться при вычислении порогов. Кроме того, диалоговое окно позволяет пользователю вручную выбирать цвет или плотность 409 штриховки гистограммы. Как и в случае диалогового окна 302, после ввода команды переменного формата может быть выполнена некоторая проверка правильности ввода.
Фиг. 5A изображает диапазон ячеек 501, отформатированных с использованием переменного форматирования со стилем значков. Значки могут быть привязаны к подмножествам диапазона значений, связанных с диапазоном 501 ячеек. Значки могут входить в группы по три, четыре, пять или более значков. В данном случае значки с круговыми диаграммами были вставлены программным модулем в отдельные ячейки в диапазоне 501 ячеек на основе присвоенных пороговых значений.
Фиг. 5B изображает диалоговое окно 502 ввода, с помощью которого пользователь может определить пороговые значения переменного формата для диапазона 501 ячеек. Стиль 503 формата, выбранный для диапазона 501 ячеек, представляет собой "Наборы значков", что позволяет пользователю выбрать набор значков и применить диапазоны 507 значений и тип 505 вычисления для каждого из значков. Для каждого значка в наборе пользователь может назначить оператор сравнения (например, >, ≥, <, ≤) и выбрать тип оценки из вариантов "Число", "Процент", "Процентиль" или "Формула". Таким образом, пользователь присваивает диапазоны пороговых значений каждому значку, и программный модуль может вычислить выбранный диапазон ячеек на основе пороговых значений и отобразить соответствующий значок в ячейке. Дополнительные части диалогового окна могут позволить пользователю изменить стиль 511 значка, изменить порядок 513 значков на обратный и скрыть значение ячейки и отображать только определенный значок 515. Как рассмотрено выше, если выбран тип 505 вычисления "Процент" или "Процентиль", система может вычислить ячейки и обеспечить вычисленное пороговое значение в качестве выбранного значения.
Фиг. 6A изображает диапазон 601 ячеек, отформатированных с использованием переменного форматирования со стилем двухцветной шкалы. Изображенная двухцветная шкала работает так же, как трехцветная шкала, за исключением того, что не обеспечивается порог средней точки. Фиг. 6B изображает диалоговое окно 602 ввода, с помощью которого пользователь может определить параметры переменного форматирования для диапазона 601 ячеек. Это диалоговое окно работает так же, как диалоговое окно 302, описанное для трехцветной шкалы, отличие состоит в отсутствии ввода для средней точки.
Фиг. 7 является блок-схемой последовательности операций, изображающей способ применения переменного форматирования к диапазону ячеек. Первоначально на этапе 701 принимается выбор диапазона ячеек. Затем принимается команда переменного форматирования на этапе 702. Диалоговые окна 302, 402, 502 и 602 представляют примеры визуальных интерфейсов, которые могут использоваться для установки параметров, пороговых точек и типов порогов, привязанных к команде переменного форматирования. На этапе 703 какие-либо динамические пороговые значения определяются для пороговых точек и типов порогов, выбранных в диалоговом окне. Определение динамических пороговых значений обсуждается более подробно со ссылкой на фиг. 8 и 9. На этапе 704 диапазон ячеек вычисляется на основе применяемого переменного формата. Когда ячейки вычислены, форматирование может быть применено к каждой ячейке посредством выбора формата из диапазона форматов на основе вычисления, как проиллюстрировано этапом 705. На этапе 706 изменения значений формата или другие изменения диапазона ячеек могут потребовать обновления форматов ячеек.
Фиг. 8 является блок-схемой последовательности операций программы вычисления динамического порога для вычисления динамических порогов и динамических пороговых значений в соответствии с одним или более вариантами осуществления настоящего изобретения. Программа 800 начинается на этапе 801, и на этапе 803 принимается выбор диапазона ячеек. На этапе 805 определяется тип порога для одной пороговой точки команды переменного форматирования, который должен быть применен к выбранному диапазону ячеек. Как обсуждается выше, тип порога может являться, но без ограничения, числом, процентом, процентилем, наибольшим значением, наименьшим значением, средним значением и формулой. На этапе 807 определяется, является ли тип порога "формулой". Если на этапе 807 определено, что тип порога является "формулой", обеспечивается диалоговое окно ввода формул, которое позволяет пользователю ввести формулу, которая будет вычислена для определения порогового значения. Принятая формула может являться формулой любого типа и может использовать значения, содержащиеся в ячейках, которые входят в выбранный диапазон ячеек, в ячейках вне диапазона ячеек или любой комбинации этих случаев. В одном варианте осуществления формула не может быть проверена или вычислена, пока это не запрашивается пользователем, поскольку в некоторых случаях ячейки, которые должны использоваться для предоставления значения для использования в формуле, могут быть еще не заполнены данными.
Если на этапе 807 определено, что тип порога не является "формулой", на этапе 811 определяется, является ли тип порога динамическим типом порога, отличающимся от формулы. Если на этапе 811 определено, что тип порога является динамическим, программа 800 переходит к подпрограмме определения динамического типа порога, как проиллюстрировано с помощью этапа 815 подпрограммы и как более подробно описано со ссылкой на фиг. 9. Однако, если на этапе 811 определено, что тип порога не является динамическим, на этапе 813 от пользователя принимается значение для порогового значения.
После того, как на этапе 813 принято значение, или после того, как завершилась подпрограмма 815 определения динамического типа порога, на этапе 817 определяется, имеются ли какие-либо дополнительные пороги, которые должны быть вычислены для выбранного диапазона ячеек. Если на этапе 817 определено, что имеются дополнительные пороги, которые должны быть вычислены, программа 800 возвращается на этап 805 и продолжается. Однако, если на этапе 817 определено, что нет дополнительных порогов, для которых должно быть определено пороговое значение, на этапе 819 выбранные ячейки вычисляются на основе порогов и определенных пороговых значений. На основе вычисления к каждой выбранной ячейке применяются фоновые заливки, привязанные к каждой пороговой точке. На этапе 821 примененные представления графически отображаются пользователю. Процедура 800 завершается на этапе 823.
Фиг. 9 является блок-схемой последовательности операций подпрограммы определения динамического типа порога для определения пороговых значений для динамических порогов в соответствии с одним или более вариантами осуществления настоящего изобретения. Программа 900 начинается на этапе 901, и на этапе 903 выполняется определение относительно того, является ли динамический тип порога типом "Наименьшее значение", "Наибольшее значение" или "Среднее значение". Если на этапе 903 определено, что тип порога является типом "Наибольшее значение", "Среднее значение" или "Наименьшее значение", на этапе 905 выбранные ячейки вычисляются для выявления ячейки, содержащей соответствующее значение. Например, если выбранный тип порога является типом "Наименьшее значение", то система вычислит каждую из выбранных ячеек для выявления ячейки, содержащей наименьшее значение. Аналогично, если тип порога является типом "Среднее значение" или "Наибольшее значение", то система вычислит выбранные ячейки для выявления ячейки, содержащей соответственно среднее значение или наибольшее значение из значений, содержащихся в выбранных ячейках.
Если на этапе 903 определено, что тип порога не является типом "Наибольшее значение" или "Среднее значение", тогда динамический тип порога является либо типом "Процент", либо типом "Процентиль". На этапе 907 определяется, должно ли вычисленное значение процента или процентиля быть предоставлено в качестве порогового значения. Если на этапе 907 определено, что вычисленное значение процента или процентиля не должно быть предоставлено в качестве порогового значения, на этапе 909 пороговое значение принимается от пользователя. Однако, если на этапе 907 определено, что вычисленное значение процента или процентиля должно быть предоставлено, на этапе 911 определяется рассматриваемая пороговая точка. Как обсуждается выше, пороговая точка зависит от выбранного стиля формата. Например, если пользователь выбирает стиль формата "Трехцветная шкала" (см., например, фигуру 4B), имеется три пороговых точки: "Минимум", "Середина" и "Максимум".
На этапе 913 определяется, является ли типом порога для пороговой точки тип "Процент". Если тип порога не является типом "Процент", то тип порога является типом "Процентиль", и на этапе 915 выбранные ячейки упорядочиваются по значениям. На этапе 917 выбранные ячейки вычисляются для выявления значения процентиля, соответствующего пороговой точке. Например, если пороговая точка является точкой "Минимум", система может выявить значение, которое является 20-м процентилем для значений выбранных ячеек. В примере выше, если имеется десять выбранных ячеек, значение, содержащееся во второй ячейке, будет являться 20-м процентилем. Точно так же, если пороговая точка является точкой "Максимум", система может выявить значение 80-ного процентиля как вычисленное значение. Аналогично для пороговой точки "Середина" система может выявить значение в 50-м процентиле.
Однако, если на этапе 913 определено, что тип порога является типом "Процент", на этапе 919 вычисляются выбранные ячейки для вычисления значения процента для выбранной пороговой точки. Например, если пороговая точка является точкой "Минимум", система может определить значение 25% в качестве вычисленного порогового значения. В случае, когда значения в выбранном диапазоне ячеек находятся от 0 до 200, значение "25%" будет равно 50. Если пороговая точка является точкой "Середина", система может выявить значение 50% в качестве вычисленного порогового значения. Аналогично, если пороговая точка является точкой "Максимум", система может выявить значение 75% в качестве вычисленного порогового значения.
После того, как динамические пороговые значения были вычислены на этапах 905, 917 или 919 или приняты на этапе 909, они применяются в качестве пороговых значений для пороговой точки на этапе 921. На этапе 923 подпрограмма 900 возвращает управление программе 800 вычисления динамического порога (фиг. 8).
Как рассмотрено выше, динамические пороговые значения могут автоматически изменяться в ответ на изменение значений выбранных ячеек или в ответ на изменение диапазона выбранных ячеек. Например, пользователь может изменить значение в ячейке таким образом, что новое значение становится новым наименьшим значением для диапазона. Если переменное форматирование, применяемое к этим ячейкам, включает в себя тип порога "Наименьшее значение", соответствующее пороговое значение будет динамически скорректировано и заменено на новое наименьшее значение, содержащееся в диапазоне ячеек. Кроме того, в ответ на корректировку динамического порогового значения обновляется вычисление выбранных ячеек, и форматирование применяется к диапазону ячеек на основе новых динамических пороговых значений.
Возвращаясь к фиг. 8, в ответ на прием изменения значения ячейки в выбранном диапазоне ячеек или в ответ на прием изменения количества выбранных ячеек программа 800 инициализируется на этапе 805 для диапазона ячеек, которые включают в себя изменение. Эта программа продолжается до завершения на этапе 923, тем самым динамически корректируя динамические пороговые значения и обновляя графически отображаемые результаты.
Хотя были показаны и описаны иллюстративные варианты осуществления, будет понятно, что в них могут быть внесены различные изменения без отступления от сущности и объема изобретения.