Изменение цвета фигур с помощью vba

я вставил кучу прямоугольника в моей таблице. Они называются:

прямоугольник 1
через
Прямоугольник 172

есть ли какой-то код, который я мог бы использовать для изменения заливки и цвета линии? Я бы назначил код другой кнопке, которая его изменила.

27
задан studiohack
26.12.2022 1:22 Количество просмотров материала 3006
Распечатать страницу

1 ответ

посмотрим, если это будет адаптироваться к вашим потребностям сделать каждый прямоугольник вызвать этот макрос

Sub doRectChange()
 Dim c
  c = Application.Caller
 MsgBox (c)
  With ActiveSheet.Shapes(c)
   .Fill.ForeColor.SchemeColor = 3
   .Fill.Transparency = 0#
   .Line.Weight = 3#
   .Line.DashStyle = msoLineSolid
   .Line.Style = msoLineSingle
   .Line.Transparency = 0#
   .Line.Visible = msoTrue
   .Line.ForeColor.SchemeColor = 6
  End With
 End Sub

вот альтернатива Конечно, ваши номера кнопок могут отличаться, поэтому отрегулируйте это.

Sub allRectanglesColor()
Dim c
Dim color
c = Application.Caller
'MsgBox (c)
Select Case c
Case "Button 1"
color = 10
Case "Button 2"
color = 12
Case "Button 3"
color = 17
End Select
ActiveSheet.Rectangles.Select
 With Selection.ShapeRange
    .Fill.Visible = msoTrue
    .Fill.Solid
    .Fill.ForeColor.SchemeColor = color
 End With
End Sub
1
отвечен datatoo 2022-12-27 09:10

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх