返回列表 上一主題 發帖

如何取出指定除外的其他工作表名稱呢?

如何取出指定除外的其他工作表名稱呢?

各位大大好:
       
   我不想使用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

感恩大大!

本帖最後由 et5323 於 2010-10-17 11:12 編輯

Sub aa()
    Dim mSht As Worksheet
    Dim ar, ar1()
    Dim s%, s1%
    Dim mStr$
   
    On Error Resume Next
    ar = Array("aa", "cc", "ff")
    For Each mSht In Worksheets
        mStr = mSht.Name
        s = Application.WorksheetFunction.Match(mStr, ar, 0)
        If Err.Number <> 0 Then
            ReDim Preserve ar1(s1)
            ar1(s1) = mSht.Name
            s1 = s1 + 1
            Err.Clear
        End If
    Next
End Sub

TOP

謝謝大大。

這正是小弟所期待的語法。
Err.Number 也是小弟
今天才了解如此好用呢?

感恩大大!

TOP

        靜思自在 : 願要大、志要堅、氣要柔、心要細。
返回列表 上一主題