我是Excel VBA的新手,我必须创建一个用于处理大量数据的宏。数据采用以下样本格式:
我正在编写一个函数来获得范围,使得对于A列中的每个单元格,例如AAAA,我需要得到范围B2:B4。我写了一个函数来扫描A列,直到它找到一个非空单元格(startCell),然后从该单元格中获取引用,它通过执行以下方式获取第一个单元格B2:
Worksheets(sheetName).Cells(startCell.Row + 1, 2)
countStart = startCell.Row + 1
然后它运行一个循环,从B2开始计算B列中的单元格数(使用countStart作为行号)直到遇到空单元格并将计数存储在countFinal中。然后我想获得
之间的范围Worksheets(sheetName).Cells(startCell.Row + 1, 2)
和
Worksheets(sheetName).Cells(countFinal, 2)
对于具有BBBB和CCCC的细胞,需要进行同样的操作
我该怎么做?
PS:我不能在这里分享代码,因为代码在我的办公室机器上,而且我是从我的家用机器发布的。但我可以看看我是否可以在以后发布它。
答案 0 :(得分:1)
您需要使用以下语法组合起始和结束范围点:
Range(StartingCell, EndingCell)
在你的情况下可以如下:
Worksheets(sheetName).Range( _
Worksheets(sheetName).Cells(startCell.Row + 1, 2), _
Worksheets(sheetName).Cells(startCell.Row + 1, 2).End(XlDown))