- 帖子
- 5923
- 主題
- 13
- 精華
- 1
- 積分
- 5986
- 點名
- 0
- 作業系統
- win10
- 軟體版本
- Office 2010
- 閱讀權限
- 150
- 性別
- 男
- 來自
- 台灣基隆
- 註冊時間
- 2010-5-1
- 最後登錄
- 2022-1-23
        
|
本帖最後由 GBKEE 於 2011-11-17 08:05 編輯
回復 7# jewayy
奇怪 測試沒問題的, 怎又出現 ,請改用物件類別模組.
請在 VAB中插入一 物件類別模組 會自動名為 Class1
執行 Ex
Module1的程式碼- Sub Ex()
- Dim i As Integer, Test() As New Class1
- 'Test指定為 新物件類別模組 : Class1物件
- On Error Resume Next
- For i = 1 To Sheet2.QueryTables.Count
- ReDim Preserve Test(1 To i)
- Set Test(i).Query = Sheet2.QueryTables(i)
- Test(i).Query.Refresh False
- Next
- End Sub
複製代碼 物件類別模組 : Class1 的程式碼- Option Explicit
- Public WithEvents Query As QueryTable 'Query指定為QueryTable物件
- Private Sub Query_AfterRefresh(ByVal Success As Boolean) '查詢後的事件
- If Success = False Then '查詢失敗 'Success = True 查詢成功
- With Query.ResultRange
- .Interior.ColorIndex = 37
- .Cells(1).Offset(1).Resize(.Rows.Count - 1, .Columns.Count) = "查無資料"
- End With
- End If
- End Sub
- Private Sub Query_BeforeRefresh(Cancel As Boolean) '查詢前的事件
- With Query.ResultRange
- .Interior.ColorIndex = xlNone
- End With
- End Sub
複製代碼 |
|