Отформатируйте цвет ячейки на основе значения в другом листе и ячейке

Я считаю, что это известно как «интернированные» строки. Python делает это, так же как и Java, а также C и C ++ при компиляции в оптимизированных режимах.

Если вы используете две идентичные строки, вместо того, чтобы тратить память на создание двух строковых объектов, все интернированные строки с одинаковыми содержимое указывает на одну и ту же память.

Это приводит к тому, что оператор Python «is» возвращает True, потому что две строки с тем же содержимым указывают на один и тот же строковый объект. Это также произойдет в Java и в C.

Это полезно только для экономии памяти. Вы не можете полагаться на него, чтобы проверить равенство строк, потому что различные интерпретаторы, компиляторы и JIT-механизмы не всегда могут это сделать.

14
задан DCookie 16 January 2009 в 17:31
поделиться

4 ответа

Вот то, как я сделал это в Excel 2003 с помощью условного форматирования.

Для применения условного форматирования к Sheet1 использование оценивает от Sheet2, необходимо зеркально отразить значения в Sheet1.

Создание зеркала Sheet2, столбец B in Sheet 1

  1. Переходит в Sheet1.
  2. Вставляют новый столбец путем щелчка правой кнопкой по столбцу заголовок A, и выбор "Вставляют".
  3. Вводят следующую формулу в A1:

    =IF(ISBLANK(Sheet2!B1),"",Sheet2!B1)

  4. Копия A1 путем щелчка правой кнопкой по нему и выбора" Copy".
  5. Вставка формула в столбец A путем щелчка правой кнопкой по ее заголовку и выбора" Paste".

Sheet1, столбец A должен теперь точно зеркально отразить значения в [1 111], столбец B.

(Примечание: если Вам не нравится он в столбце A, это работает точно также для имения его в столбце Z или где-либо еще.)

Применение условного форматирования

  1. Остаются на [1 115].
  2. столбец B Select путем щелчка левой кнопкой по его заголовку.
  3. Выбор Изменение пункта меню Format > Conditional Formatting...
  4. Condition 1 к" Formula is" и вводят эту формулу:

    =MATCH(B1,$A:$A,0)

  5. Щелчок Format... кнопка и выбор зеленый фон.

необходимо теперь видеть, что зеленый фон относился к ячейкам соответствия в [1 122].

Сокрытие зеркального столбца

  1. Остаются на [1 123].
  2. Щелкают правой кнопкой по заголовку по столбцу A и выбору" Hide".

Это должно автоматически обновить Sheet1 каждый раз, когда что-либо в [1 127] изменяется.

4
ответ дан 1 December 2019 в 15:02
поделиться

Можно также сделать это с [1 131] именованные диапазоны , таким образом, Вы не должны копировать ячейки от Sheet1 до Sheet2:

  1. Определяют именованный диапазон, говорят Sheet1Vals для столбца, который имеет значения, на которых Вы хотите основывать свое условие. Можно определить новый именованный диапазон при помощи Insert\Name\Define... пункт меню. Введите на свое имя, затем используйте браузер ячейки в Refers to поле для выбора ячеек, которые Вы хотите в диапазоне. Если диапазон будет изменяться со временем (добавьте или удалите строки), можно использовать эту формулу вместо того, чтобы выбрать ячейки явно:

    =OFFSET('SheetName'!$COL$ROW,0,0,COUNTA('SheetName'!$COL:$COL)).

    Добавляют -1 перед последним ), если столбец имеет строку заголовка.

  2. Определяют именованный диапазон, говорят Sheet2Vals для столбца, который имеет значения, которые Вы хотите условно отформатировать.

  3. Использование диалоговое окно Условного форматирования для создания условий. Определите Formula Is в выпадающем, затем поместите это для формулы:

    =INDEX(Sheet1Vals, MATCH([FirstCellInRange],Sheet2Vals))=[Condition]

    , где [FirstCellInRange] адрес ячейки, Вы хотите отформатировать, и [Condition] значение Ваша проверка.

, Например, если мои условия в Sheet1 имеют значения [1 112], 2 и 3 и столбец, я форматирую, столбец B в Sheet2 тогда, мои условные форматы были бы чем-то как:

=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=1
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=2
=INDEX(Sheet1Vals, MATCH(B1,Sheet2Vals))=3

можно тогда использовать живописца формата для копирования этих форматов в остальную часть ячеек.

5
ответ дан 1 December 2019 в 15:02
поделиться

Я использую Excel 2003 -

, которым проблема с использованием условного форматирования вот состоит в том, что Вы не можете сослаться на другой рабочий лист или рабочую книгу в Ваших условиях. Что Вы можете, чтобы сделать быть установленными некоторый столбец на листе 1 равное соответствующему столбцу на листе 2 (в Вашем примере =Sheet2! B6). Я использовал Столбец F в своем примере ниже. Тогда можно использовать условное форматирование. Выберите ячейку в Sheet 1, строке, столбце 1 и затем войдите в меню условного форматирования. Выберите "Formula Is" из выпадающего и установите условие к "= 6$F$ =4". Нажмите на кнопку формата и затем выберите вкладку Patterns. Выберите цвет, который Вы хотите, и Вы сделаны.

можно использовать инструмент живописца формата, чтобы применить условное форматирование к другим ячейкам, но знать, что Excel по умолчанию использует абсолютные ссылки в условиях. Если Вы захотите, чтобы они были относительны, то необходимо будет удалить знаки доллара из условия.

у Вас может быть до 3 условий, относился к ячейке (используйте добавление>> кнопка у основания диалогового окна Условного форматирования), поэтому, если последняя строка фиксируется (например, Вы знаете, что это всегда будет строка 10), можно использовать его в качестве условия выбрать цвет фона ни к одному. Предположение, что последнее значение Вы заботитесь о, равняется последовательно 10 тогда (все еще предполагающий установку столбца F на sheet1 к соответствующим ячейкам на листе 2), тогда устанавливает 1-е условие к Формуле, = 10$F$ ="" и шаблон ни к Одному. Сделайте его первым условием, и это переопределит любой после конфликтующих операторов.

1
ответ дан 1 December 2019 в 15:02
поделиться

Я сделал это прежде с условное форматирование . Это - отличный способ визуально осмотреть ячейки в рабочей книге и определить выбросы в Ваших данных.

0
ответ дан 1 December 2019 в 15:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: