【问题标题】:[Excel][VBA] How to draw a line in a graph?[Excel][VBA] 如何在图形中画一条线?
【发布时间】:2011-04-15 15:02:49
【问题描述】:

请查看此图片以了解我的明确问题:

【问题讨论】:

  • 您可以尝试发布更高分辨率的图片或详细说明您的问题吗?图片的分辨率无法说明您的问题。
  • @Jubbles:我更新了,请帮忙!
  • 只需将第二个系列添加到绘图中,使用所需的坐标。你只需要两点。
  • 我不能跟着你!你能给我一个样品吗?

标签: vba graph excel draw


【解决方案1】:
Sub Tester()
    Dim s, d

    d = #4/18/2011# * 1 ''a bit of a hack, since I could figure out how to plot a date directly
    With ActiveSheet.ChartObjects("Chart 1").Chart 'adjust to suit

        Set s = .SeriesCollection.NewSeries()
        With s
            .Name = ""
            .XValues = Array(d, d)
            .Values = Array(90, 0)
            .MarkerStyle = xlMarkerStyleNone
            .Border.Color = vbRed
        End With

    End With

End Sub

【讨论】:

  • Tim Wiliams:行不通,线路不符合我的要求(倾斜)
  • @hungbm06:这很好用!自己试了一下。 @Tim:+1 教我一些我不知道的东西,即您可以将 litteral Arrays(而不仅仅是工作表范围)提供给 XValues 和 Values。
  • @hungbm06:可能是您的语言环境有问题。而不是d = #4/18/2011# * 1,请尝试Dim d As Double,后跟d = DateSerial(2011, 4, 18)
  • @hungbm06:啊哈。我刚刚复制了你的问题。有关解决方案,请参阅@Jon Peltier 的答案。您必须将图表类型从折线图更改为 XY(散点图)图。一般来说,我发现 XY 图表更容易操作,更难搞砸。
【解决方案2】:

Excellll 的回答不完整。如果您只是将此数据添加到显然是 LINE 图表的内容中,它将不会出现在预期的位置。您必须将添加的系列转换为 XY 图表系列(右键单击系列,图表类型)。

此外,您的线路位于 4/17 和 4/18 之间,因此您需要使用 4/17 的中午作为 X 值,即 4/17/11 12:00。

这是一组关于向 Excel 图表添加线条的文章: http://peltiertech.com/Excel/Charts/AddLine.html

此外,删除图例条目是通过选择图例条目的文本并按 Delete 来完成的。这需要在图例条目上单击两次,而不是双击。

【讨论】:

  • 只有当 x 轴为日期时,您的解决方案才正确,其他类型的 x 轴则错误
  • 如果是其他类型的轴,可以为需要添加的线使用不同的X值。
【解决方案3】:

如果您不介意工作簿中的额外混乱,您可以使用以下内容填充四个单元格:

4/18/11     0
4/18/11    90

使用此数据将新系列添加到图表中。如果您不希望新系列显示在图表图例中,请双击图例中的红色系列名称并按“删除”。

【讨论】:

    猜你喜欢
    • 2012-04-20
    • 1970-01-01
    • 2011-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多