返回列表 上一主題 發帖

[原創] Excel 2003 VBA 轉 vb6

[原創] Excel 2003 VBA 轉 vb6

本帖最後由 暗黑 於 2010-7-4 15:55 編輯

雖然說,這個論譠是以 Excel 為主要的討論區(我也是因為EXCEL討論區被吸引進來的),在舊論壇裡我學了很多Excel 的技巧,如今來到新論壇看到小誌大大開了vb與vb.net的板面
我來跟大家分享一下 Excel 2003 VBA 轉 vb6 的方式吧

其初...我因職務上的關係,需要用到的統計計算比較多,所以我會用excel vba 進行統計效率的提昇,久了之後,同部門的同事也想要用,可是呢因為excel 註點的關係,變的excel在開啟切換時,會有一些問題的產生,所以我就找了一些資料,試著把Excel 2003 VBA 轉 vb6,大家也可以試試

step 1
       在撰寫 excel 2003 vba  時,要用表單模式,下去開發,也就是說把Excel 2003當成一個程式開發器,去撰寫VBA
        (或許有人說,那直接用vb6 開發就好,何必如此麻煩;是因為我發現有很多人會寫vba,但卻不知道VB6也是差不多的,另VBA的環境也比較有善)

Step2.
     vba 撰寫好之後,在vba編輯器中將表單、模組、類別...等等,用匯出檔案的方式匯到一個資料夾放好

Step3.
    開啟vb6 建立一個新專案,然後把剛剛匯出的檔案,新增至 vb6 (表單、模組、類別....),然後設定新專案的屬性(啟動物件)為vba的啟動表單名稱

Step4.
  重要的動作
   vb6>>專案>>設定引用項目>>Microsoft ActiveX Data Objects 2.8 Library(勾選、確定)

Step5
   就可以按下F5 試run  了,基本上沒有其他的問題上,一般就可以直接執行了,然後轉成.exe的檔案大家就可以一起使用了

我寫的比較簡略是因為轉換真的很簡單,有問題或興趣的或不對的方,大家可以一起談論,我主要是想讓大家可以多一個想法,原來vba  與 vb6 是可以互通的,這樣大家就不會只侷限在 vba上,找資料時不仿也可以看看vb6是怎麼寫的
ps:vba  是可以寫程式系統的,因為我就是用vba 寫 品質資訊系統的....共勉之...
是學程式而不是要程式,是進步的基礎

一部分程序行,调用excel中的range等可能不行吧,有些导入到VB6做成exe或dll需要更改,这是我以前做的一COM加载项
学习

TOP

程式的寫法當然很多種寫法,看個人如何寫
我所指的是用標準的form來撰寫(step1有提到)
,對於excel的資料使用,我會把excel當資料庫用adodb下去呼叫使用,就我個人而言,到目前為止,轉換上是還沒有上問題;但我也同意wqfzqgk大大說的,不是所有的程式寫法都可以這樣轉,畢竟vba跟vb6(sp6)是有不同的,但它兩的相容性我想對一般使用者來說應該夠了
是學程式而不是要程式,是進步的基礎

TOP

小弟在原工作上也是先從VBA開始做學習
的確在VBA的開發環境上,因為功能不像VB6那麼多,界面看起來是簡單好操作
暗黑大指的應該是單純的以開發的程式與資料庫間的連結如此的利用此方式做轉換也算是學到了一招

TOP

感謝大大分享~那麼反過來說VB的CODE應該也可以使用匯入匯出的方式移植到VBA裡面囉~
有空來試試看~

TOP

那麼到 Visual Sudio 的VB 呢? 是否也可以呢? 我是因為要製作報表所以從 VB 跑到 VBA 的,
V98

TOP

Visual Sudio 的VB 因微軟改成.net的架構,vba跟vb.寀很多語法是不同的,所以Visual Sudio 的VB程式 是無法用在vba上的
是學程式而不是要程式,是進步的基礎

TOP

因為列印報表的關係,我把我的糸統轉到Excel來,不知道暗黑大大可知道Excel可以編譯成.exe檔嗎?
V98

TOP

不是很了解你的意思...
   Excel可以編譯成.exe檔嗎?..  基本上應該是不行

但  可以換成另一種想法,用 vb  寫個列印報表的程式,而excel就當成資料庫
是學程式而不是要程式,是進步的基礎

TOP

因為列印報表的關係,我把我的糸統轉到Excel來,不知道暗黑大大可知道Excel可以編譯成.exe檔嗎?
linshin1999 發表於 2010/12/27 10:21 AM


不行喔! excel無法編譯為exe
換個方式談 如果您不想讓user看到這些巨集(excel bva)
那excel跑完後 讓他匯出資料 這樣user就只能看到資料~
若是我回答,使您滿意,請您讓我知道!                  
若是我的回覆,您仍有其他見解,也請您不嗇指教!

TOP

        靜思自在 : 改變自己是自救,影響別人是救人。
返回列表 上一主題