vba把每个sheet里C2位置的数据存到一个数组中
时间: 2024-12-14 19:20:34 浏览: 5
VBA利用CopyMemory函数复制数组【二维数组转一维数组】.xlsm
在VBA中,如果你想将每个工作表(Sheet)中C2位置的数据存储在一个数组中,你可以按照以下步骤操作:
1. 首先,声明一个动态数组,其大小可以根据实际工作表的数量预先确定,或者在运行时动态调整。例如,你可以使用`Variant`类型的数组,因为`Variant`可以包含不同类型的数据:
```vba
Dim sheetData(1 To MaxSheets) As Variant '假设MaxSheets是你预计的工作表最大数量
```
2. 然后,遍历所有工作表,使用For...Each循环来访问每个工作表,并读取C2单元格的数据:
```vba
For Each ws In ThisWorkbook.Worksheets
sheetData(ws.Index) = ws.Cells(2, 3).Value 'ws.Index会返回当前工作表的索引,1开始计数
Next ws
```
这里`ws.Cells(2, 3)`表示第2行第3列,即C2单元格。
3. 这样,`sheetData`数组现在包含了所有工作表C2位置的数据。记得替换`MaxSheets`为你实际的工作表数量,或者使用`Worksheets.Count`获取实际的工作表数目。
如果你需要根据某个条件或筛选结果存储数据,你可能需要添加额外的逻辑来过滤或处理数据。
阅读全文