Как добавить нижнюю границу текущей строки после оператора if? - PullRequest
1 голос
/ 17 июня 2019

Как добавить нижнюю границу текущей строки, где оператор if равен true? Я пытаюсь добавить границу, если значение в конкретной ячейке в текущей строке равно 'X'.

Пока что я пытался сделать это путем условного форматирования, но по какой-то причине это не работает. Я отмечаю всю строку (где мне нужна нижняя граница) и использую «Использовать формулу для ...», затем использую формулу: =$N$3='X'. Я предполагаю, что таблица будет копировать это форматирование и дальше, но не видно границ.

Как и в случае с кодированием, я пробовал:

Public Sub formating()

  Dim rng As Range
  Set rng = Range(ActiveCell.Row)

  If (ActiveCell.Value = x) Then
     With rng.Borders
         .LineStyle = xlContinous
         .Color = vbBlack
         .Weight = xlThin
     End With

End Sub

Ответы [ 2 ]

0 голосов
/ 17 июня 2019

более короткий вариант @JanFusik:

With ActiveCell
  .Borders(xlEdgeBottom).LineStyle = IIf(.Value = 10, xlContinuous, .Borders(xlEdgeBottom))
End With
0 голосов
/ 17 июня 2019

Гянджа, это должно быть довольно легко достигнуть с помощью свойства Range.Borders.

См. Ниже:

If ActiveCell.value = 10 Then
    With ActiveCell.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
    End With
End If

Это добавит границу нижнего края к ActiveCell, если значение вон был равен 10. Смотрите разницу в наших кодах и попробуйте применить (xlBottomEdge). Подробнее об этом можно прочитать здесь .Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...