我在Excel中有一个通过SQL查询填充的数据表。
此表是数据透视表的数据源,后者又用于创建数据透视表。
我需要在本月(例如2016年7月)以一种颜色和未来在另一种颜色中显示数据。我做了我的研究,似乎我必须操纵源数据(这意味着应该更改SQL查询的结果)。在我的情况下,这是不可能的。
所以我决定突出显示“今日”数据点,以显示过去和未来的相遇。我怎么能用VBA做到这一点?我需要有这种逻辑的东西:
for i=1 to category.count
if categoryname(i)="July-2016" then change marker style
end if
next
谢谢。
答案 0 :(得分:0)
我使用简单的Excel公式来确定当前月份的数据点索引,然后通过宏循环从项目开始到当前月份改变了线条颜色:
For i = 1 To DataPointIndex
ActiveChart.ChartArea.Select
ActiveChart.SeriesCollection(1).Select
ActiveChart.SeriesCollection(1).Points(i).Select
With Selection.Format.Line
.Visible = msoTrue
.ForeColor.RGB = RGB(255, 0, 0)
.Transparency = 0
.DashStyle = msoLineSolid
End With
类似的可以使用标记,但我更喜欢不同的线条颜色。