Поделиться через


Объект Border (Excel)

Представляет границу объекта.

Замечания

Большинство обрамленных объектов (все, кроме объектов Range и Style ) имеют границу, которая обрабатывается как одна сущность независимо от того, сколько сторон она имеет. Вся граница должна возвращаться в виде единицы.

Используйте свойство Border , например из объекта TrendLine , чтобы вернуть объект Border для объекта этого типа.

Обратите внимание, что визуальные свойства объекта Border заблокированы; то есть изменение одного свойства может вызвать изменения в другом. В большинстве случаев индуцированные изменения служат для того, чтобы сделать границу видимой (что может быть или не желательно). Однако возможны другие (более неожиданные) результаты.

Ниже приведен пример взаимоблокировки с непредвиденными результатами. В этом примере задание свойства Weight границы в значение xlThick приводит к тому, что свойство LineStyle станет xlSolid, несмотря на то, что ранее было установлено значение xlDashDotDot.

   Sub InterlockingExample()
       Dim SomeRange As Range
       Dim SomeBorder As Border
       
       Set MyRange = Selection
       Set SomeBorder = MyRange.Borders(xlDiagonalDown)
       SomeBorder.Color = RGB(255, 0, 0)
       Debug.Print "SomeBorder.LineStyle = " & SomeBorder.LineStyle   'SomeBorder.LineStyle = 1
       Debug.Print "Set SomeBorder.LineStyle = xlDashDotDot"          'Set SomeBorder.LineStyle = xlDashDotDot
       SomeBorder.LineStyle = xlDashDotDot
       Debug.Print "SomeBorder.LineStyle = " & SomeBorder.LineStyle   'SomeBorder.LineStyle = 5
       Debug.Print "Set SomeBorder.Weight = xlThick"                  'Set SomeBorder.Weight = xlThick
       SomeBorder.Weight = xlThick
       Debug.Print "SomeBorder.LineStyle = " & SomeBorder.LineStyle   'SomeBorder.LineStyle = 1
   End Sub

Пример

В следующем примере изменяется тип и стиль линии тренда на активной диаграмме.

With ActiveChart.SeriesCollection(1).Trendlines(1) 
 .Type = xlLinear 
 .Border.LineStyle = xlDash 
End With

Объекты Range и Style имеют четыре дискретные границы — левую, правую, верхнюю и нижнюю, которые можно возвращать по отдельности или в виде группы. Используйте свойство Borders , чтобы вернуть коллекцию Borders , которая содержит все четыре границы и обрабатывает границы как единицу. В следующем примере двойная граница добавляется в ячейку A1 на одном листе.

Worksheets(1).Range("A1").Borders.LineStyle = xlDouble

Используйте border (index), где индекс определяет границу, чтобы вернуть один объект Border . В следующем примере задается цвет нижней границы ячеек A1:G1.

Worksheets("Sheet1").Range("A1:G1"). _ 
 Borders(xlEdgeBottom).Color = RGB(255, 0, 0)

Индекс может быть одной из следующих констант XlBordersIndex : xlDiagonalDown, xlDiagonalUp, xlEdgeBottom, xlEdgeLeft, xlEdgeRight, xlEdgeTop, xlInsideHorizontal или xlInsideVertical.

Свойства

См. также

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.