各位大大好:
我不想使用if迴圈來寫,而以match函數
或是其它方式來達成下面所述的情形。
我想指定某些工作表並將其排除在外。
現用match方式卻有阻礙,不知要如何
修正語法才比較合適呢?
設有六個工作表其名稱為
"aa","bb","cc","dd","ee","ff"
要如何將工作表名稱"bb","dd","ee"
存入ar1陣列呢?
語法如下:
Sub aa()
Dim mSht As Worksheet
Dim ar, ar1()
Dim s%, s1%
Dim mStr$
ar = Array("aa", "cc", "ff")
For Each mSht In Worksheets
mStr = mSht.Name
On Error GoTo 10
s = Application.WorksheetFunction.Match(mStr, ar, 0)
20
Next
Exit Sub
10
ReDim Preserve ar1(s1)
ar1(s1) = mSht.Name
s1 = s1 + 1
GoTo 20
End Sub
感恩大大! |