Visual_Basic 板


LINE

各位前輩好!! 小弟目前遇到的問題: 將MSFlexGrid的內容轉存成excel檔案 下面為片段程式碼 *------ Dim objExcelApp As Excel.Application Dim objSheet_VAC As Excel.Worksheet 在宣告這邊我沒有宣告Workbook Set objExcelApp = CreateObject("ExcelApplication") objExcelApp.Workbooks.Add '這裡新增一個工作簿 objExcelApp.Visible = True objExcelApp.ActiveWorkbook.Worksheets.Add Set objsheet_VAC = objExcelApp.ActiveWorkbook.Activesheet objsheet_VAC.name = "VAC" '以下總共會新增三個sheet並重新命名 省略用一行表示 以下為執行巨集區塊 objSheet_VAC.Activate '設定目前focus在指定sheet test '這邊是把excel錄製的巨集加入至VB6的模組內來呼叫 巨集內容只是做欄位合併跟調整字型 Set objExcelApp = Nothing Set objSheet_VAC = Nothing '---------- 目前狀況是我資料都顯示在MSFlexGrid上,我去Click轉存excel的按鈕第一次巨集 可以正常執行,此時我畫面會出現excel表格並填上我要的資料與調整格式。 再來我excel不存檔直接關閉,再執行一次轉存excel的按鈕,這時候資料還是有 正常填寫進去,但是卻沒有執行巨集作格式調整,我有試著單步除錯,發現在我 第二次執行轉存excel按紐時,程式進入巨集的第一道程式碼就跳出巨集, 而第一道程式碼是 Range("A2:N2").Select 但我比較不懷疑是巨集的程式碼造成,不知道是不是第一次我把excel關閉,沒有正確 把excel釋放掉造成? 有請各位前輩替小弟我解惑, 謝謝 -- 活在我不懂的道理 --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 210.61.204.1
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Visual_Basic/M.1462866139.A.816.html ※ 編輯: rex921 (210.61.204.1), 05/10/2016 15:53:55 ※ 編輯: rex921 (210.61.204.1), 05/10/2016 16:15:06 ※ 編輯: rex921 (210.61.204.1), 05/10/2016 16:55:36
1F:推 fumizuki: 不使用excel的時候要呼叫Application.Quit 05/10 21:26
2F:→ fumizuki: 只有把參考設定Nothing,app並不會結束 05/10 21:26
3F:→ 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
4F:推 fumizuki: 沒記錯的話,Close & Quit & 設定 Nothing 就好了 05/12 19:37
5F:→ fumizuki: New Excel.Application 是在呼叫 Excel主程式 05/12 19:37
6F:→ fumizuki: 凡是外部程序都不受vb6管理 05/12 19:38
7F:→ fumizuki: 沒記錯的話,vb6程式正常結束後,被呼叫的excel也會結束 05/12 19:39
的確,當我程式關閉程序都會自動關閉!!
8F:→ fumizuki: vb6應該不認識什麼叫Selection 05/12 19:44
Selection是用excel錄製的巨集,還是得改成VB6看得懂得語法....
9F:→ fumizuki: 要改成 objExcelApp.Selection 05/12 19:44
VB6與excel版本還有VBA太糾纏不清了 ,不應該本是同根生嗎...哈哈 我換個作法,先自己弄一個空白的excel檔案,然後把格式跟巨集寫在裡面. 然後VB6開啟這個空白檔案把資料寫進去,另存新檔..user開啟檔案就會自動執行巨集 就可以把格式調整好了!! 終於把頭痛的問題搞定了!!謝謝前輩。 ※ 編輯: rex921 (61.227.198.216), 05/12/2016 21:07:32







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Gossiping站內搜尋

TOP