Vba 如何将工作表设置为进一步方法的变量(带循环)
我已经使用此代码从一个范围创建了一个工作表(对我有效) 现在,我想用变量分配新创建的工作表。(以便我可以使用ws1、ws2等进行进一步操作。 差不多Vba 如何将工作表设置为进一步方法的变量(带循环),vba,excel,Vba,Excel,我已经使用此代码从一个范围创建了一个工作表(对我有效) 现在,我想用变量分配新创建的工作表。(以便我可以使用ws1、ws2等进行进一步操作。 差不多 Dim i As Integer, n As Integer n = wsWithSheetNames.Range("G3:G5").Count ReDim ws1(1 To n) For i = 1 To n Set ws1(i) = ThisWorkbook.Worksheets(i) Next 如何将工作表名称指定给我从该范围创建的
Dim i As Integer, n As Integer
n = wsWithSheetNames.Range("G3:G5").Count
ReDim ws1(1 To n)
For i = 1 To n
Set ws1(i) = ThisWorkbook.Worksheets(i)
Next
如何将工作表名称指定给我从该范围创建的名称?假设工作表的数量可能超过G3:G5中指定的数量,这可能会起作用
Dim r As Range, c As Range, x As Long
Set r = wsWithSheetNames.Range("G3:G5").SpecialCells(xlCellTypeConstants)
ReDim ws1(1 To r.Count)
For Each c In r
x = x + 1
Set ws1(x) = ThisWorkbook.Worksheets(c.Value)
Next c
也许行中的小更改是:Set ws1(i)=ThisWorkbook。工作表(i)改为:Set ws1&i=ThisWorkbook。工作表(i)应该适合您。@1001001,代码不起作用,保存时出错
Dim r As Range, c As Range, x As Long
Set r = wsWithSheetNames.Range("G3:G5").SpecialCells(xlCellTypeConstants)
ReDim ws1(1 To r.Count)
For Each c In r
x = x + 1
Set ws1(x) = ThisWorkbook.Worksheets(c.Value)
Next c