【问题标题】:How to correctly add a series of time values to an Excel chart如何正确地将一系列时间值添加到 Excel 图表中
【发布时间】:2018-07-17 12:11:20
【问题描述】:

我正在尝试将由Time 值组成的系列添加到图表中。 y 轴的格式为Time。我正在使用变量myVal 来保存我想要在数组中重复的值,作为系列绘图值。

我知道Time 存储在Date 数据类型中。我不确定如何正确转换以通过 VBA 将系列添加到图表中。

我尝试通过代码分配系列值和绘图一直导致在 y 轴上围绕 0 绘制一条线,表明我的比例错误。见图表图像上的红线。

图表:

尝试在 myVal 上使用 DateValue("00:07:00")TimeValue("00:07:00") 进行转换,然后进行缩放,因为它们返回 0,所以没有用。

我还看到有 FormatDateTime 函数,带有参数 vbLongTime,但我看不到如何在我的情况下应用它。

我知道我可以直接从工作表中添加系列:

.FullSeriesCollection(2).Values = _
        "=ChartDataResponseTimes!$BC$548:$BC$552"

其中$BC$548:$BC$552是范围,如上图所示,包含重复的"00:07:00"。这不是我想使用的方法,因为我想通过代码中的数组分配系列值。

我敢肯定,这很容易做到,但我今天失败得很惨。

谁能解决这个问题?

代码:

Sub AddingSeries()

    With ActiveSheet.ChartObjects("hidRTMeanCat1").Chart

        .SeriesCollection.NewSeries

        .FullSeriesCollection(1).Values = _
                                        "=ChartDataResponseTimes!$B$548:$B$552"

        .FullSeriesCollection(1).XValues = _
                                         "=ChartDataResponseTimes!$A$548:$A$552"

        .SeriesCollection.NewSeries

        Dim myVal As Date '**************************************Problem code***************

        myVal = DateValue("00:07:00")

        .FullSeriesCollection(2).Values = Array(myVal, myVal)

                          '**************************************Problem code***************
    End With

End Sub

注意:

ChartDataResponseTimes!$A$548:$A$552" 是下面示例中的第一列数据。

ChartDataResponseTimes!$B$548:$B$552 是下面示例中的第二列数据。

数据样本:

| Date   | North West |
|--------|------------|
| Aug-17 | 00:10:07   |
| Sep-17 | 00:09:50   |
| Oct-17 | 00:09:29   |
| Nov-17 | 00:09:44   |
| Dec-17 | 00:11:17   |

【问题讨论】:

  • 您是否尝试格式化轴?
  • 什么意思?轴已格式化为时间。我有一个空白图表,我将系列添加到其中。

标签: excel time charts series vba


【解决方案1】:

将 myVal 变量类型更改为 Double。

Dim myVal As Double

【讨论】:

  • 我得到与 Dim myVal As Double 的类型不匹配: myVal = CDbl("00:07:00") 。虽然这听起来是正确的想法。
  • @QHarr, myVal = TimeValue("00:07:00")
  • 噢!回到我开始但数据类型错误的地方。非常感谢您的排序。
  • @QHarr,祝你好运。
猜你喜欢
  • 2021-01-29
  • 2015-12-29
  • 1970-01-01
  • 2014-07-17
  • 1970-01-01
  • 2019-11-16
  • 1970-01-01
  • 2013-12-17
  • 1970-01-01
相关资源
最近更新 更多