Страницы: 1
RSS
Градиентная заливка фигуры (тип градиента-Радиальный/Точка)
 
Здравствуйте,уважаемые знатоки, помогите, пожалуйста, вот в каком вопросе:  
Никак не могу через VBA добраться до Градиента типа радиальный/путь.  
Во вложении макрос, который создает вроде бы нормальный градиент, но не то что нужно.  
То, что нужно в файле тоже есть)  
Спасибо!
 
А нам не добраться до .xlsm  
если можно, .xls
 
А в xls такая заливка разве есть?
 
Есть диагональная 1 и диагональная 2  
Я хотел посмотреть, что такое радиальная
 
Подозреваю, что от центра в заданном направлении (путь). А посмотреть мы (2003), скорее всего, сможем только, если нужный результат сохранить рисунком :-)
 
Так надо записать макрорекордером выбор этой    
заливки и посмотреть код.
 
{quote}{login=Kuzmich}{date=12.12.2011 10:08}{thema=Re}{post}А нам не добраться до .xlsm  
если можно, .xls{/post}{/quote}  
 
В том то и дело, что в 2007/2010 и в 2003 совершенно по разному в этом плане проходит работа макроса:  
2003:  
Selection.ShapeRange.Fill.ForeColor.RGB = RGB(228, 108, 116)  
Selection.ShapeRange.Fill.BackColor.RGB = RGB(216, 46, 57)  
Selection.ShapeRange.Fill.TwoColorGradient msoGradientFromCenter, 2  
2007/2010:  
Set GradientShape = ActiveSheet.Shapes.AddShape(msoShapeOval, 59.75, 157.375, 200, 200)  
   With GradientShape.Fill  
           .ForeColor.RGB = RGB(216, 46, 57)  
           .OneColorGradient msoGradientFromCenter, 1, 1  
           .GradientStops.Insert RGB(228, 108, 116), 0  
           .GradientStops.Insert RGB(216, 46, 57), 1  
   End With  
   GradientShape.Line.Visible = False  
   GradientShape.Fill.GradientStops.Delete (1)  
   GradientShape.Fill.GradientStops.Delete (1)  
 
Нужный градиент во вложении)
 
тут очепяточка:  
 
вместо:  
Selection.ShapeRange.Fill.TwoColorGradient msoGradientFromCenter, 2  
надо:  
Selection.ShapeRange.Fill.TwoColorGradient msoGradientFromCenter, 1
Страницы: 1
Читают тему
Наверх