如何使用Excel 2007 VBA在每列上循环多行/列范围?

时间:2010-11-21 23:21:08

标签: excel vba excel-vba excel-2007

我正在使用Excel 2007 VBA循环遍历具有多行和多列的范围。

我特意尝试遍历用户选择的范围,并对范围中的每一列执行计算,并在每列下面输出两行计算。

1 个答案:

答案 0 :(得分:1)

您可以使用

检索当前选定的范围
Application.Selection.Address

这将为您提供一个范围值(Selection属性返回一个Range对象),它看起来像“$B$4:$J$20”。

鉴于您现在有一个可以使用的范围,您可以使用以下内容迭代每个列:

For Each col In userSelectedRange.Columns

   ...

Next

Columns属性再次返回一个Range对象,您可以进一步迭代或执行其他计算(您的确切需求不是很清楚)。

要将计算结果发布到每列上方两行(例如小计或类似),请尝试使用偏移功能:

Cells.Offset(-2, 0)

如果你能够提供更多关于你想要的计算的细节,我可以在你如何实现它的过程中添加更多细节。