0

我有一个 excel 2010 启用宏的工作簿。工作簿有几张纸。第一张表有一个宏分配按钮,用于导入 csv 文件。csv 文件加载到名为“Data”的现有工作表中。导入的 csv 文件加载到第 1 行作为下面数据的标题的列中。例如,A1 被命名为“时间”,单元格 A2 向下是时间数据。单元格 B1 被命名为“温度”,单元格 B2 向下是与每次读数相关的温度数据。该工作簿在名为“温度图”的工作簿中有第三个现有工作表。我想通过引用“数据”表中的值自动在此表上绘制温度与时间的关系图。(时间是 x 轴,温度是 y 轴)

问题是加载到“数据”表中的导入 csv 文件每次都会有不同的行数。有时导入的 csv 文件可能有 25 行数据,有时可能有 100,000 行数据。假设我导入了一个包含 1000 行数据的 csv,工作簿还绘制了空白单元格,因为我的图表已预先设置为捕获整个列。结果,图表数据被挤压到左侧。如果我预先将要绘制的行数设置为 1000,那么下一个导入的超过 1000 行的 csv 文件将不会绘制超过 1000 行。

我尝试使用#NA 公式渲染单元格以避免绘制空单元格,但此解决方案会创建一个庞大的文件。

有没有办法创建一个生成数据折线图的宏:

y 轴 =(B2 到最后一个带有数字的 B 单元格)与 x 轴 =(A2 到最后一个带有数字的 A 单元格)

这样每次打开工作簿并导入新的 csv 文件(无论有多少行)时,图表都会绘制带有数字的单元格而不绘制空白单元格?

任何帮助将不胜感激。先感谢您!

4

1 回答 1

0

通过使用动态范围,您可以创建一个命名范围,该范围根据您拥有的数据量进行扩展和收缩。您将创建两个命名范围,一个用于 x,一个用于 y,然后绘制范围。现在不在 PC 中,但这将通过 offset 命令完成(动态范围)。

于 2013-02-05T01:58:59.477 回答