如何使用“偏移”和“结束”(xlDown)来select要绘制的数据

我正在尝试使用下表中的数据创build堆积列图表。

我想select列A1:A9和C1:F9。 select还需要适应不同的列大小(即有人添加了另一个特征)。 该macros也应该工作在数据表中的任何位置。 只要macros从ActiveCell发起。

我如何不仅select直到列结束,而且还select排除“值”列。 我正在尝试使用“结束”和“偏移量”,但我不确定最好的方法。 再一次,我想在桌子上的任何一张桌子上使用它,然后从中创build一个堆积柱形图。

谢谢你的帮助!

在这里输入图像说明

请尝试此代码。 这个想法是,你基于头部不是“值”的条件迭代地Union各种数据范围。

工作假设是ActiveCellCurrentRegion将select您的表格数据。 CurrentRegion的定义是“当前区域是空白行和空白列的任意组合范围”。 ' – MSDN链接

然后代码将第一列附加到输出范围。 之后,如果标题不是“值”,则仅将外部列附加到输出范围。

 Dim rngData As Range Dim intCounter As Integer Dim rngToSelect As Range Set rngData = ActiveCell.CurrentRegion Set rngToSelect = Range(rngData.Cells(1, 1), rngData.Cells(rngData.Rows.Count, 1)) For intCounter = 1 To rngData.Columns.Count If rngData.Cells(1, intCounter).Value <> "Values" Then Set rngToSelect = Union(rngToSelect, Range(rngData.Cells(1, intCounter), rngData.Cells(rngData.Rows.Count, intCounter))) End If Next intCounter rngToSelect.Select 

在这里输入图像说明