Как мне отформатировать каждую ячейку в столбце FOO в Excel, если len() значения ячейки длиннее, чем BAR?

Если это не то место, чтобы спросить об этом, дайте мне знать.

Вот формула, которую я имею прямо сейчас:

=LEN($A$2)>$AB$11

Относится к:

=$A$2

Это прекрасно работает для одной клетки. Мне нужно это применить к каждой ячейке в столбце.

Если бы это был C#, я бы сделал что-то вроде этого:

foreach(cell in columnA)
{
   if(cell.text.length > (INT)$AB$11.text)
   {
      cell.format(red)
   }
}

Другими словами, как мне отформатировать каждую ячейку в столбце FOO, если len() значения ячейки длиннее, чем BAR?

1 ответ

Решение

Если вам нужно сгенерировать форматирование программно для большого количества ячеек, вы можете сделать это с помощью макроса (VBA), но если вы просто ищете быстрое и простое решение, вы можете отбросить $ из своего оригинала Формула и скопировать и вставить. Другими словами:

= LEN (A2)> $ AB $ 11

Относится к A2, но если вы скопируете и вставите это, скажем, в B3, из B2 (то есть на одну ячейку вниз от оригинала), оно обновится и будет следующим:

= LEN (A3)> $ AB $ 11

Вы можете вставить большой диапазон ячеек, и он обновит их все. Ссылки без знака доллара являются относительными ссылками и будут обновляться при копировании / вставке; ссылки со знаками доллара являются абсолютными. Кстати, я предполагаю, что AB11 содержит определенный параметр, с которым вы хотите сравнить все ячейки. Если вы сравниваете их все с одним значением, оставьте знаки доллара в этой ссылке. If you're comparing a column to another column, relative references can do that for you too like this:

=LEN(A2)>$AB11

Другие вопросы по тегам