推 fumizuki: 不使用excel的時候要呼叫Application.Quit 05/10 21:26
→ fumizuki: 只有把參考設定Nothing,app並不會結束 05/10 21:26
→ fumizuki: 在quit之前也應該呼叫Workbook.Close關閉活頁簿 05/10 21:28
我試試看!!感謝您。
※ 編輯: rex921 (61.227.199.184), 05/10/2016 22:34:40
最後是把所有Set xlsheet = XXX 都把他設定成nothing 還有相關的recordset也設定
處理程序就可以正常關閉了,
過程中發現,如果在VB6使用 sheet(1).select ,但是程式並沒有create這個名稱的話
整個 set nothing就不會成功,VB6對於excel的除錯功能好像沒那麼完善,
或者該說沒有@@!! 我是從頭create excel 然後關閉excel去驗證,慢慢複製舊的程式碼,
一行一行debug ...
※ 編輯: rex921 (210.61.204.1), 05/12/2016 10:56:54
再請教一個問題...
我用excel 2003錄製了一個巨集並匯出成.bas檔案,並加入VB6的模組
內容是選取所有儲存格,文字置中加粗的功能
以下是bas檔案的程式碼
Public Sub test()
Cells.Select
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlCenter
.ReadingOrder = xlContext
End With
Selection.Font.Bold = True
End Sub
只要我在主程式區呼叫這個副程式,我的Excel處理程序就關不掉,
不知道是不是.bas這個副程式的寫法不完善?導致我的主程式下次
無法再正常執行這個副程式?
煩請前輩替小弟我解惑,謝謝!
※ 編輯: rex921 (210.61.204.1), 05/12/2016 11:32:15
推 fumizuki: 沒記錯的話,Close & Quit & 設定 Nothing 就好了 05/12 19:37
→ fumizuki: New Excel.Application 是在呼叫 Excel主程式 05/12 19:37
→ fumizuki: 凡是外部程序都不受vb6管理 05/12 19:38
→ fumizuki: 沒記錯的話,vb6程式正常結束後,被呼叫的excel也會結束 05/12 19:39
的確,當我程式關閉程序都會自動關閉!!
→ fumizuki: vb6應該不認識什麼叫Selection 05/12 19:44
Selection是用excel錄製的巨集,還是得改成VB6看得懂得語法....
→ fumizuki: 要改成 objExcelApp.Selection 05/12 19:44
VB6與excel版本還有VBA太糾纏不清了 ,不應該本是同根生嗎...哈哈
我換個作法,先自己弄一個空白的excel檔案,然後把格式跟巨集寫在裡面.
然後VB6開啟這個空白檔案把資料寫進去,另存新檔..user開啟檔案就會自動執行巨集
就可以把格式調整好了!!
終於把頭痛的問題搞定了!!謝謝前輩。
※ 編輯: rex921 (61.227.198.216), 05/12/2016 21:07:32