1

Я хотел бы изменить существующий цвет границ нескольких ячеек - некоторые из них имеют только границу вверху / слева или вообще не имеют границ в Excel.

Есть ли стандартная опция для этого, или это можно сделать с помощью макроса?

РЕДАКТИРОВАТЬ:

Видимо, мое описание не было достаточно ясным. Я пытаюсь изменить цвет границы (уже существующих ячеек) календаря. Так что это 12 вкладок и много строк.

Как вы можете видеть на изображении ниже, не все ячейки имеют одинаковую границу (стиль), например. границы, окружающие всю ячейку (у некоторых есть, у некоторых ячеек есть только линия сбоку сверху / снизу, а у некоторых вообще нет). Я пытаюсь изменить цвет их всех без необходимости перерисовывать все линии. Я хотел бы «обновить» текущий цвет.

пример границ

1 ответ1

3

Вы можете использовать код VBA следующим образом - это повлияет на текущий выбор (если выбор является диапазоном ячеек

Option Explicit

Public Sub setBorders()
    Dim cel As Range, clr1 As Long, clr2 As Long

    clr1 = vbWhite  'if cell border color is different than white, and has LineStyle

    clr2 = vbRed    'change its color to vbRed

    If TypeOf Selection Is Range Then
        For Each cel In Selection       'select your Range
            With cel
                With .Borders(xlEdgeLeft)
                    If .Color <> clr1 And .LineStyle <> xlNone Then .Color = clr2
                End With
                With .Borders(xlEdgeTop)
                    If .Color <> clr1 And .LineStyle <> xlNone Then .Color = clr2
                End With
                With .Borders(xlEdgeBottom)
                    If .Color <> clr1 And .LineStyle <> xlNone Then .Color = clr2
                End With
                With .Borders(xlEdgeRight)
                    If .Color <> clr1 And .LineStyle <> xlNone Then .Color = clr2
                End With
            End With
        Next
    End If
End Sub

пограничные цвета


Чтобы использовать его, откройте редактор VBA - Alt + F11 и вставьте код в стандартный модуль VBA.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .