【问题标题】:Data source start and end range variables数据源开始和结束范围变量
【发布时间】:2019-06-25 17:21:41
【问题描述】:

希望标题是正确的...

试图解释;我正在将大量数据从 PLC 提取到电子表格中。我有一个图表来显示两个系列与时间的关系。例如,由于数据量巨大,我将系列值限制在 ='Retrieve Data'!$D$400:$D$2000 范围内。

图例条目和水平轴都应该在相同的范围内,目前为了在图表上显示不同的时间窗口,我需要将它们单独编辑到各自列中的相同系列范围。 有没有办法在公式中使用两个单元格,一个作为起点,一个作为终点,例如:

='Retrieve Data'!$D$("W6"):$D$("X6") W6 是范围的起点,X6 是范围的终点?

我还需要研究使用 VBA 吗?

【问题讨论】:

    标签: excel vba excel-formula


    【解决方案1】:

    你可以使用INDIRECT function:

    =INDIRECT("'Retrieve Data'!$D$" & W6 & ":$D$" & X6)
    

    请注意,INDIRECT 是一个 volatile 函数,您应该避免大量使用,因为它会减慢很多速度。


    如果您打算在图表数据范围内使用它,它将无法工作,因为图表数据范围必须有一个固定地址。

    有一种方法可以解决这个问题,那就是使用命名范围

    在名称管理器中,使用上面的公式定义名称MyChartRange。然后在您的购物车数据中使用=MyChartRange 作为地址。

    【讨论】:

    • 不幸的是错误代码表明功能无效
    • @Shaw_9 如果您在图表中使用它,请使用此处所述的公式命名范围:stackoverflow.com/a/18275292/3219613 并在图表源中使用命名范围。另请参阅我编辑的答案。
    • 这看起来正是我希望实现的。我已经创建了命名范围,但是我无法在系列值中引用它们。我正在尝试输入 ='Retrieve Data'!PulseCount,其中 Retrieve Data 是我的打开表,PulseCount 是一个命名范围
    • @Shaw_9 try =PulseCount 您可能添加了全局名称而不是工作表本地名称。
    • 抱歉,这对我来说是全新的,是的,这很有效。非常感谢
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-11-10
    • 1970-01-01
    • 2021-08-14
    • 2011-05-29
    相关资源
    最近更新 更多