- 帖子
- 2035
- 主題
- 24
- 精華
- 0
- 積分
- 2031
- 點名
- 0
- 作業系統
- Win7
- 軟體版本
- Office2010
- 閱讀權限
- 100
- 性別
- 男
- 註冊時間
- 2012-3-22
- 最後登錄
- 2024-2-1
|
本帖最後由 c_c_lai 於 2016-4-28 09:48 編輯
回復 44# chaoyiho
第一個問題: 變數宣告前後不一- Private Sub CommandButton1_Click()
- If Application.FindFile = False Then
- MsgBox "您沒有開啟母檔"
- End If
- Dim lRow& ' Dim lRrow& (錯誤的變數宣告)
- lRow = 3 ' lRrow = 3 (錯誤的變數宣告)
-
- EXCEL表單處理介面.ListBox1.Clear ' 避免重複貼製,造成與 "手動篩選" 項目不符
-
- vD.RemoveAll
- While Cells(lRow, 5) <> ""
- If Not vD.Exists(CStr(Cells(lRow, 5))) Then
- EXCEL表單處理介面.ListBox1.AddItem CStr(Cells(lRow, 5))
- vD(CStr(Cells(lRow, 5))) = lRow
- End If
- lRow = lRow + 1
- Wend ' 上有 While 而無結束處裡 (Wend)
- End Sub
複製代碼 第一個問題: 產生 ActiveX 的原因- Private Sub UserForm_Initialize()
- Dim hWndForm As Long ' LongPtr 是 64 位元的長整數指標宣告
- Dim IStyle As Long
-
- ' Set vD = CreateObject("scripting.dictonary") ' 少一個 i
- Set vD = CreateObject("Scripting.Dictionary")
-
- hWndForm = FindWindow("ThunderDFrame", Me.Caption)
- IStyle = GetWindowLong(hWndForm, GWL_STYLE)
- IStyle = IStyle Or WS_THICKFRAME '(還原)
- IStyle = IStyle Or WS_MINIMIZEBOX '(最小化)
- IStyle = IStyle Or WS_MAXIMIZEBOX '(最大化)
- SetWindowLong hWndForm, GWL_STYLE, IStyle
- End Sub
複製代碼 jackyq 大大指證出你 ActiveX 的錯誤點了,原因是你輸錯字了
Set vD = CreateObject("scripting.dictonary") ,少一個 i ,
與大小寫無關,年紀大了畢竟視力退很多了,不仔細還真沒看到呢!
謝謝 jackyq 大大。 |
|