Формула Excel для получения цвета ячейки
Я хотел бы знать, можем ли мы узнать Цвет CELL с помощью любой встроенной формулы (без использования каких-либо макросов)
Я использую пакет Home User Office 2010.
Ответы
Ответ 1
Нет, вы можете получить только цвет интерьера ячейки с помощью макроса. Я боюсь. Это действительно легко сделать (cell.interior.color), поэтому, если у вас нет требования, которое ограничивает вас использованием VBA, я говорю, что нужно пойти на это.
Ответ 2
Как прокомментировано, на всякий случай ссылка, которую я разместил там, сломалась, попробуйте следующее:
Добавить имя (любое допустимое имя) в диспетчере имен Excel на вкладке "Формула" в ленте.
Затем назначьте формулу, используя функцию GET.CELL.
=GET.CELL(63,INDIRECT("rc",FALSE))
63 означает обратную сторону.
Позвольте сказать, что мы назовем его Background, поэтому в любой ячейке с типом цвета:
=Background
Результат:
![enter image description here]()
Обратите внимание, что ячейки A2, A3 и A4 возвращают 3, 4 и 5 соответственно, что соответствует индексу цвета фона клеток. НТН.
BTW, здесь ссылка на Excel Индекс цвета
Ответ 3
Цвет не данные.
Техника Get.cell имеет недостатки.
- Он не обновляется сразу после изменения цвета ячейки, а только после пересчета ячейки (или листа).
- В нем недостаточно цифр для миллионов цветов, доступных в современном Excel. Посмотрите на скриншот и обратите внимание, что разные интенсивности желтого или фиолетового имеют одинаковое число.
![enter image description here]()
Это не удивительно, поскольку Get.cell использует старую команду XML, то есть команду из языка макросов Excel, который использовался до появления VBA. В то время цвета Excel были ограничены менее 60.
Опять же: цвет не данные.
Если вы хотите покрасить ячейки в цвет, используйте условное форматирование на основе значений ячейки или на основе правил, которые могут быть выражены с помощью логических формул. Логика, которая приводит к условному форматированию, также может использоваться в других местах для представления данных, независимо от значения цвета ячейки.
Ответ 4
Предполагая, что у меня уже был ответ, который заключается в том, что нет встроенной функции рабочего листа, которая возвращает цвет фона ячейки, я решил просмотреть эту статью, если я ошибаюсь. Я был удивлен, заметив ссылку на ту же самую статью MVP, которую я использовал в ходе моих текущих исследований цветов в Microsoft Excel.
Хотя я согласен с тем, что в чистом виде цвет - это не данные, это метаданные, и он использует как таковой. С этой целью я попытаюсь разработать функцию, которая возвращает цвет ячейки. Если мне это удастся, я планирую включить его в надстройку, чтобы я мог использовать ее в любой книге, где она присоединится к растущему легиону других функций, которые, как я полагаю, Microsoft оставила вне продукта.
Независимо от того, что IMO, свойство ColorIndex практически бесполезно, поскольку по существу нет связи между цветовыми индексами и цветами, которые могут быть выбраны в стандартном наборе цветов переднего плана и фона. См. Комбинации цветов: работа с цветами в Microsoft Office и связанная с ними двоичная книга Color_Combinations Workbook.