2017-08-11 117 views
0

我有一张表“Result”和一个显示特定数据的表。x轴为图表中的月份

在表中我有一列从1周数,直到53

并非所有的周有结果填补。有几周没有结果。

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

虽然我正在提取,但我可以看到细节在图表中重叠,并且缺少可视化。

我想问一下,如果有办法,我可以将图表的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 

This is how my table looks like with the data, and with column A having the Weeknumber with the above code, I am generating an Graph like below.

而是下面显示的数字,我想有相应的月份名称。任何人都可以帮我实现这个目标吗?

+0

@有谁能帮忙吗? – Jenny

回答

1

使用助手列。

在我的例子我在B列在A列和年份的周数列C我则用下面的公式:

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

然后而是采用了周数列的你图表使用您的计算列。然后用“MMMM”这会给你,你找什么

1

如果您的周数是Column A,使用Column B作为辅助列,并输入以下公式的自定义格式格式化图表轴,

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

enter image description here

您可以使用此范围图表轴。希望这可以帮助。

+0

我以同样的方式做到了。现在..如果你能看到。我有4次1月3日时间二月..这些再次显示在我的图表..如果有一种方式图表可以得到1月累计结果和其他个月? – Jenny

+0

@Jenny使用'sumif'以月份作为标准 –

+0

您的意思是在我的图表代码? – Jenny

相关问题