在图表中以x轴为月

我有一个工作表“结果”与一个表格,显示某些数据。

在表格中,我列A为1到53的周数。

并不是所有的周都有结果。 有几个星期没有结果。

我正试图从这个表中生成一个列堆积图表。

在提取的过程中,我可以看到图表中的细节重叠,缺less可视化。

我想问,如果有一种方法,我可以将图表的X轴的星期数转换为月。

谁能告诉我怎么做到的?

这里是我用于我的图表的代码

Sub chartstatus() Dim rng, rng1, rng2 As Range Dim cht As Object Set rng1 = ActiveSheet.Range("A2:A53") Set rng2 = ActiveSheet.Range("G2:J53") Set rng = Union(rng1, rng2) ThisWorkbook.Sheets("Result").ChartObjects.delete Set sh = ActiveSheet.ChartObjects.Add(Left:=750, _ Width:=1100, _ Top:=80, _ Height:=350) sh.Select Set cht = ActiveChart With cht .SetSourceData Source:=rng .ChartType = xlColumnStacked cht.Axes(xlSecondary).TickLabels.NumberFormat = "0.0%" cht.SeriesCollection(1).delete End With cht.SeriesCollection(1).Format.Fill.ForeColor.RGB = RGB(255, 0, 0) cht.SeriesCollection(2).Format.Fill.ForeColor.RGB = RGB(0, 255, 0) cht.HasTitle = True cht.ChartTitle.Text = "Result 2017(Percentage)" End Sub 

这就是我的表格与数据的相似之处,列A具有周数 与上面的代码,我正在生成一个像下面的图形。

而不是显示在下面的数字,我想有相应的月份名称。 任何人都可以帮助我做到这一点?

使用帮手列。

在我的例子中,我有列A中的星期编号和列B中的年份。在列C中,我使用了下面的公式:

 =DATE(B1,1,-2)-WEEKDAY(DATE(B1,1,3))+A1*7 

然后,而不是使用星期编号列为您的图表使用您的计算列。 然后用自定义格式“mmmm”来格式化图表轴。这会给你你想要的

如果您的星期编号在Column A ,请使用Column B作为帮助列,然后input下面的公式,

 =TEXT(42729+(A1*7),"mmm-yy") 

在这里输入图像说明

你可以使用这个范围的图表轴。 希望这可以帮助。