在首先发布一个过于宽泛的问题后,我想再次提出要求 - 更多以问题为中心。 所显示的条形图是各种项目所必需的,将用于6个月的项目以及3年的项目。 但它会被转发 - 所以它应该看起来很专业。 出于这个原因,我想将x轴上的日期更改为每月的第一天。在一段固定的时间内,我可以这样做。但是对于各种各样的持续时间,它必须在背景中有一些vba代码 - 而这正是我在黑暗中徘徊的地方。我开始和结束日期的所有测试都没有成功。这些数字太多了。
我将在下面显示图表的vba。它刚刚录制完成,内部没有任何特殊技巧。
有没有办法,到达那里?通过开始日期和结束日期之间的计算,我没有得到每个月的第一个随机时间段的可靠结果。
感谢您的帮助! < 3
Sub testStackoverflow()
ActiveSheet.Shapes.AddChart.Select
ActiveChart.ChartType = xlBarStacked
ActiveChart.SetSourceData Source:=Range("testStckoverflow!$A$86:$B$96")
ActiveChart.Legend.Select
Selection.Delete
ActiveSheet.ChartObjects("Diagramm 3").Activate
ActiveChart.ChartTitle.Select
Selection.Delete
End Sub
答案 0 :(得分:0)
我认为你可以使用2D水平堆积条形图。
将图表的x轴的起点设置为项目计划中出现的最早月份的第一天。
每个任务的系列1是任务开始日期和开始图表x轴的日期之间的差异。这使您可以显示不在同一天开始的任务。将此系列的条形部分设置为透明。
每个任务的系列2是以天为单位的任务持续时间。每个条形的这一部分应设置为可见。
将图表的X轴格式化为类别:日期,类型:月 - 年。这会将每个刻度设置为每个月的第一天。