VBA 点击按钮将当前的sheetname为机况的A1:A50范围放进数组内
时间: 2023-06-08 10:08:26 浏览: 144
好的,对于你的问题,你可以使用如下的VBA代码来实现:
```vb
Sub PutSheetNameToArr()
Dim arr() As Variant
Dim i As Integer
ReDim arr(1 To 50) '定义数组的大小为50
For i = 1 To 50 '遍历A1:A50范围
If Cells(i, 1).Value = "机况" Then '找到SheetName为“机况”的单元格
arr(i) = Cells(i, 1).Value '将单元格的值存入数组
End If
Next i
'处理数组中的数据
For i = LBound(arr) To UBound(arr)
If arr(i) <> "" Then
Debug.Print arr(i)
End If
Next i
End Sub
```
在这个代码中,首先创建了一个大小为50的数组。然后,将循环遍历A1:A50范围,找到SheetName为“机况”的单元格,并将其值存入数组中。随后,使用LBound和UBound函数来处理数组中的数据,以打印出数组中非空的元素。
希望这个代码能够满足你的需求。如果你有其他的问题,请继续问我。
相关问题
VBA 怎么将当前的sheetname为机况的A1:A50范围放进数组内
您好!感谢您使用 ChitGPT 进行交流。回答您的问题,您可以使用 VBA 中的以下代码将当前的 sheetname 为机况的 A1:A50 范围放进数组内:
```
Dim arr() As Variant
Dim i As Integer
With ActiveWorkbook.Sheets("机况")
arr = .Range(.Range("A1"), .Range("A1").End(xlDown)).Value
End With
For i = 1 To UBound(arr, 1)
Debug.Print arr(i, 1)
Next i
```
这段代码可以将指定 sheetname 下的 A1:A50 范围内的数据存储在名为 `arr` 的数组中,并通过循环逐一输出数组中的元素。希望这可以帮到您!
vba如何遍历指定的sheetname
在VBA中,可以使用`For Each`语句遍历工作簿中的所有工作表,并通过判断工作表的名称来确定是否处理该工作表。以下是一个示例代码:
```vb
Sub TraverseSheets()
Dim ws As Worksheet
For Each ws In ThisWorkbook.Worksheets
If ws.Name = "指定的工作表名称" Then
'在这里执行你的操作
End If
Next ws
End Sub
```
在上面的代码中,通过`ThisWorkbook.Worksheets`获取当前工作簿中的所有工作表,然后使用`For Each`语句遍历每个工作表。通过判断`ws.Name`是否等于指定的工作表名称,来确定是否处理该工作表。
阅读全文