Парин любит использовать диагональную границу в некоторых ячейках, чтобы показать значение как «зачеркнутый». Однако она хотела бы использовать диагональные границы в условном формате. Когда она попытается, она может установить другие типы границ, но не диагональную границу — ее нельзя выбрать в условном формате.

Она задается вопросом, есть ли способ использовать диагональные границы с условными форматами.

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

  • Установите условный формат, чтобы использовать цвет шрифта, который совпадает с цветом фона ячейки. Таким образом будет казаться, что содержимое исчезнет, ​​если ваше условие будет выполнено.

  • Установите условный формат для использования одного из шаблонов ячеек. Есть некоторые, которые выглядят как несколько диагональных линий через ячейку.

  • Установите условный формат, чтобы использовать зачеркивание для любого текста, который появляется в ячейке.

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

Private Sub Worksheet_Change(ByVal Target As Range)

Dim c As Variant     Dim addr As String

Set Target = Range("C12:C20")



If Intersect(Target, ActiveCell) Is Nothing Then Exit Sub     For Each c In Target         If c = 0 And Len(c) <> 0 Then             addr = c.Address             With Range(addr).Borders(xlDiagonalUp)

.LineStyle = xlContinuous             End With         ElseIf c > 0 And Len(c) > 0 Then             addr = ActiveCell.Address             With Range(addr).Borders(xlDiagonalUp)

.LineStyle = xlNone             End With         End If     Next End Sub

Вы должны щелкнуть правой кнопкой мыши вкладку рабочего листа, отобразить окно кода из появившегося контекстного меню, а затем вставить этот макрос в окно кода. Макрос выполняется каждый раз при изменении ячейки на листе. Он проверяет ячейки в C12: C20, и если какая-либо из них содержит нулевое значение, для этой ячейки устанавливается диагональная граница.

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

_Примечание: _

Если вы хотите узнать, как использовать макросы, описанные на этой странице (или на любой другой странице на сайтах ExcelTips), я подготовил специальную страницу, содержащую полезную информацию.

link: / excelribbon-ExcelTipsMacros [Щелкните здесь, чтобы открыть эту специальную страницу в новой вкладке браузера].

ExcelTips — ваш источник экономичного обучения Microsoft Excel.

Этот совет (10692) применим к Microsoft Excel 97, 2000, 2002 и 2003.

Вы можете найти версию этого совета для ленточного интерфейса Excel (Excel 2007 и новее) здесь:

link: / excelribbon-Diagonal_Borders_in_a_Conditional_Format [Диагональные границы в условном формате].