我正在VBA中为excel写一个宏,我希望改变连接标记的行的透明度,但保留系列中标记的透明度。
指定:图表是散点图。我希望系列的标记不透明/零透明,系列中的线条透明度为75%。
我通过使用来调整线条的透明度
myseries.format.line.transparency = 0.75
但这也会改变标记的透明度。
有谁知道我可以分别改变两者透明度的方法?我想有一个会员/财产可以做我想做的事,但我找不到它。
提前感谢您的帮助!
答案 0 :(得分:4)
这个答案不会让你很开心。
我之前已经研究过这个,我得到的信息是,这根本不是你可以通过VBA指定的参数。看起来您可以访问标记样式,大小,背景颜色和前景色,这就是它。
也许MS不认为有人会想弄乱那个。
您可以尝试的一件事是应用自定义图表格式,但如果您有可变数字和/或系列订单,则可能无效。
mychart.ApplyChartTemplate ("filepath\filename.crtx")
类似的东西,mychart已经设置为等待你要格式化的图表。
再一次,也许对你没什么用处,我能想到的最好。
答案 1 :(得分:1)
你们这些人并没有那么努力。
SeriesCollection(i).Format.Line.Transparency
将工作。原版'自动'线条样式状态阻止此vba首先执行任何操作,但如果您只是先在线条格式上设置某些其他属性,则透明度将采用。以下对我有用:
For Each obj In myChart.SeriesCollection
obj.Format.Line.DashStyle = 1
obj.Format.Line.Transparency = 0.65
Next obj
DashStyle = 1
将线条样式设置为' Solid' (与虚线,虚线等相反)并且具有释放系列格式以设置透明度的副作用。我不确定它为什么会起作用,但确实如此。
答案 2 :(得分:0)
抱歉,我的错误。我读错了这个问题。
我发现如果我开始没有标记的行,那么单独转动透明度不会打开和关闭标记。
答案 3 :(得分:0)
尝试一下:
activechart.SeriesCollection(1).format.fill.transparency=0.5