【发布时间】:2015-11-12 09:12:38
【问题描述】:
我想显示一个带有适当标签的柱形图,并将列放置在正确的位置。
我有一年中每个月的工作表。第 2 行是一个月中的日期,即编号为 1 到 31,(从“B”列到“AF”列)。 “A”列有不同的产品,从第 3 行到第 12 行(编号为 1 到 10)。在整个月中,生产数字被放入一天和产品中。例如,当月 5 日的产品 #4 将在范围(“F6”)中放置一个生产编号。 31 日的产品 #1 将进入范围(“AF3”)。
我有以下代码在 Userform1 上生成柱形图。效果很好。
Private Sub CommandButton1_Click()
Dim chartData As Range
Dim oChrt As ChartObject
Application.ScreenUpdating = False
Set oChrt = ThisWorkbook.sheets("Oct").ChartObjects.Add _
(Left:=24, Width:=768, Top:=66, Height:=402)
With oChrt.Chart
.SetSourceData Source:=ThisWorkbook.sheets("Oct").Range("B6:AF6")
.ChartType = xl3DColumn
End With
Dim imageName As String
imageName = Application.DefaultFilePath & Application.PathSeparator & "tempChart.gif"
oChrt.Chart.Export FileName:=imageName
ThisWorkbook.sheets("Oct").ChartObjects.Delete
Application.ScreenUpdating = True
UserForm1.Image1.Picture = LoadPicture(imageName)
End Sub
问题出在 x 轴上。 x 轴标记为 1 到它需要的任何值,即如果列“E”(6)、“J”(10)和“T”(20)(对于特定行)中有数据,图表将仅显示15 列,在第 1 列输入“E”,在第 5 列输入“J”,在第 15 列输入“T”。
我想要的是图表将第 1 到 5 列留空,并在 6 中显示“E”,就像它在工作表中一样。如果这就是我能做到的一切就好了。
但是,如果可以沿 x 轴创建另一行标签,我希望月份的日期低于月份的数字。日期(作为文本)在工作表的第 1 行,数字在第 2 行。
【问题讨论】: