Excel VBA 與 c# 或是VB2010? - 工程師

Genevieve avatar
By Genevieve
at 2012-12-08T21:30

Table of Contents

※ 引述《njp2942u4 (小M)》之銘言:
: 不好意思 在其他板問了 但是都得不到解答
: 軟體:Excel VBA 與 c# 或是VB2010
: 版本:都是2010
: 想問一下
: 學VB 以及C#
: 但不知道,學了這兩樣東西
: 看到這兩樣東西可以編寫office 相關程式
: 那還有需要在學Excel VBA嗎?
: 用來處理一些重複性的東西
: 也就是說c# 或是 VB 可以取代Excel VBA嗎?
: 謝謝~

因為我有使用 VB6、VBA、C# 寫 Excel 的程式。VB.NET 和 C# 暫不論語法先當是相同的
所以我講我個人對用 C# 或 Excel VBA寫Office相關程式的優缺點。
只是個人的感想,歡迎大家提出不同看法。


首先說一下使用 VBA,
VBA 是 Visual Basic for Application 的簡寫,它以 Visual Basic 的語言為基礎
修改使它能用在其它支援程式中。
除了 MS Office 可以使用,還有 Autodesk 的 AutoCAD, Inventor,或是 Solidworks...
在 Office ,若不會寫程式碼,可以錄製下來再做修改。
可以獨立成巨集檔安裝或是寫在 Excel文件中。
因為歷史久遠,使用VB的開發人數多,所以提問題很容易找到人協助解決。
網路上的資料也很多。
寫在 Excel 中使用者不需懂如何安裝,寄檔案給使用者就知道開啟。
(怎麼使用你的程式當然要另外教...)
缺點是控制項就那幾個,當然也可以自己用 VB6 寫,至少比 VBA 的好多了



使用C#
我最偏好的好處是程式碼能做版本控管。
C# 和 VB6 的Addin 同樣功能比較的話,VB6 和 VBA 的開啟速度勝出。
(因為.net 程式庫載入時間較長)
執行效能則不一定,要看做什麼事。
C# 開發容易(很多程式庫功能可使用,控制項也很多,又比VBA漂亮),
語法比 VB 乾淨好看(個人喜好 XD)
程式碼寫過可以重用(當然是看功能如何做成類別或元件、控制項)
程式要給使用者需要協助做好安裝。(或是做好Installer)
最大的缺點就是第一次載入慢...


基於以上個人感想,如果使用者的電腦等級高,原本就有安裝 .net framework,
我通常都是寫 VSTO。
若是有使用者的不能安裝 .net framework,
或電腦接近心率不整,狀況不佳……才會選擇VBA

所以整合以上要不要學 vba 我個人認為是需要的!
但是什麼時候學呢.....
...
...
當你需要用的時候再學即可……因為上手很快的!
(以我自己原本只會 vba 寫改寫 VSTO 為例,
因為知道 Workbook, worksheet, range, cell...所以大概知道怎麼寫,很快就上手了。)

假設你已經會寫某一種程式語言了,懂迴圈、判斷式、變數...
那你去瞭解一個語言的語法真的不用很久,
瞭解一個語言的龐大程式庫怎麼使用會比較久


--

All Comments

George avatar
By George
at 2012-12-11T10:42
所以可以把VBA當基礎先學吧?...
Hedda avatar
By Hedda
at 2012-12-13T17:52
現在連要不要先學什麼都要別人,上廁所要不要問啊?
Brianna avatar
By Brianna
at 2012-12-15T00:13
PUSH

蘋果回娘家 鴻海廣達設美國生產線

Bethany avatar
By Bethany
at 2012-12-08T21:17
中國時報【康文柔╱台北報導】 美國總統歐巴馬搶救失業率,蘋果執行長庫克(Tim Cook)從善如流,擬把蘋果麥金塔電 腦(iMac)生產線移回美國。「�� ...

松下電腦一年四季都在徵作業員

Kama avatar
By Kama
at 2012-12-08T19:26
請問一下 有人在中和松下電腦工作嗎 這家怎麼一年四季都在徵作業員 我兩年前去應徵過 作業員都是看似小混混的男生 感覺有壓力...於是就沒去那� ...

沒有永久的工作....

Madame avatar
By Madame
at 2012-12-08T19:21
※ 引述《ipojay (ipojay)》之銘言: : 台灣的企業喜歡裁老人 : 這跟台廠老是做一些成熟的技術有關 : 不然就做一些便宜的代工 也沒啥品牌的概念 : 這些根 ...

Excel VBA 與 c# 或是VB2010?

John avatar
By John
at 2012-12-08T18:50
不好意思 在其他板問了 但是都得不到解答 軟體:Excel VBA 與 c# 或是VB2010 版本:都是2010 想問一下 學VB 以及C# 但不知道,學了這兩樣東西 看到這兩樣東� ...

蘋果iTV供應鏈 明年新亮點

Steve avatar
By Steve
at 2012-12-08T18:00
工商時報【記者吳姿瑩、劉家熙╱台北報導】 蘋果執行長庫克看好下世代最具創新的產品iTV蓄勢待發,蘋果iTV供應鏈將是明年全球話 題及焦點。為搶�� ...