我有一个单元格,所有工作表名称都是这样写的:“Sheet1”、“Sheet2”、“Sheet3”。
所以我将此值作为字符串插入到单个变量 SheetNames 中。
现在,我需要获取单个工作表名称并插入。
我的代码是:
varSheets = Array(FogliArray)
'varSheets = Array("Other", "Research", "IT")
lngShtCnt = 0
On Error Resume Next
For Each varSheet In varSheets
With wkbSource.Worksheets(varSheet)
如果我使用 varSheets = Array("Other", "Research", "IT") 一切正常。
但是,如果我使用 varSheets = Array(FogliArray) 其中 FogliArray 是包含所有工作表名称(“其他”、“研究”、“IT”)的变量,则不起作用。
拜托,你能帮帮我吗?
非常感谢,
安德里亚。
最佳答案
使用Split
返回工作表名称的数组,Replace
引号和 Trim$
空格,如下所示:
Sub Test()
Dim FogliList As String
FogliList = Sheet1.Range("A1").Value
FogliList = Replace(FogliList, """", "") ' no quotes
Dim FogliArray
FogliArray = Split(FogliList, ",")
Dim i As Long
For i = LBound(FogliArray) To UBound(FogliArray)
Dim FoglioName As String
FoglioName = Trim$(FogliArray(i))
With wkbSource.Worksheets(FoglioName)
' Do whatever you wanted to do
End With
Next
End Sub
关于arrays - VBA:数组中的名称表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60932875/