-
1 # 嚥氣兒
-
2 # 幸福陸捌柒
用VBA寫了一個小程式在公司裡用,為公司省了2萬多的軟體採購費,還解決了一些以前的痛點。老闆給發了一個500元紅包作為貢獻獎。你說VBA香不香啊!
公司電腦啥也不給裝,只能玩VBA啊!
-
3 # 油炸生煎包
建議先學VBA,一方面直接用excel開發者模式就能寫程式碼以及執行程式碼,不需要額外軟體的安裝配置,簡單方便;另一方面你的excel基礎和積累能降低你的學習成本;第三語法比較簡單,容易上手
-
4 # Excel辦公實戰
作為兩種語言都會一些的財務人員,首先還是推薦先VBA,再考慮Python的學習
理由如下:
VBA作為office的原始自帶語言,相對於其他語言操作Excel更加方便快捷VBA是Visual Basic For Application 的簡稱,語法體驗和VB一致,都是一個大家族,作為一門指令碼語言,學習成本相對於其他語言較低。
Python作為最近幾年的熱門語言,其語法簡潔明瞭,輪子也多,財務領域,可以用於資料的採集,ETL和後續分析。就資料方面Python操作起來方便很多,但是對於一些格式圖表細節則不如VBA來的方便。
VBA學習成本相對Python低一些對於新手,首先要學習的就是錄製宏!
在Excel中錄製宏,把我們的操作錄製下來,反覆使用,就好像錄製影片一樣,可以反覆觀看,其中80%的功能,我們可以通過錄制宏來實現,剩下要學習的知識並不是很多
需要學習的大概有
1、工作薄物件,工作表物件、單元格物件、圖表類物件(相對前兩者使用少一些)等
2、迴圈和判斷語句(FOR、DO、IF常用)等
3、其他重要:陣列、FSO、正則、字典等
財務人員使用Excel頻率高,跨檔案操作必學VBA只會函式、技巧、圖表對於複雜一些的財務需求是遠遠不夠的,
集團中,財務面對是經常是大量的檔案彙總處理、資料抽取、分析、拆分
這種跨檔案,大量的處理,是函式所無法完成的,如果會VBA則得心應手
未來可以推薦PBI系列隨著PBI和Power系列的出現,給Excel插上了翅膀,
Power Query :對資料的ETL簡單高效,降低了學習成本,對於新手比較友好,
Power Pivot :號稱超級透視表,透視表大家都知道非常的好用,對於簡單的資料分析,非常方便,那麼這個超級透視表,可見一斑
Power Map:資料視覺化展示,比自帶的常用圖表展示更加方便,在Power BI中有了更多的圖表外掛可以學習
-
5 # metoogo
對於這個問題,首先要看一下題主處理資料的量是多少數量級別的。然後主要輸出的資料格式是什麼樣的?
如果只是10萬以內的資料量,其實直接vba就好了,出來的還是excel格式的表格,方便交流傳輸。而且做出來的表格傳遞給同樣擁有excel的人,就能馬上使用這些開發好的功能了。不需要像python那樣還要考慮封裝介面什麼的。
可是如果資料使用量太高,而輸出大多也只是整理好的精簡資料的話,python倒是個不錯的選擇。python入門也不算太難,但是麻煩就麻煩在後期的封裝和交流。
2種語言的對比上來說,python的功能要更為強大一些,而且上手也簡單許多。vba的話上手也不算困難,只是語法上來說沒python那麼貼近語義,很多功能\模組\命令都已經多年沒更新過了,使用的時候感覺年代感滿滿的……
-
6 # 辦公小技巧
如果你沒有語言基礎,並且想學習一門語言來處理Excel表格,那麼我的建議是不要學VBA,也不要學Python,C#和
VB.net
任學一門就可以了,然後再學習點SQL的基礎,基本上資料處理你就能搞定了,資料處理歸根結底還是需要資料庫支援,而不規範的表格資料註定不會有很多。不建議學VBA理由可能很多人會反對這個說法,我只能說適合自己的就是好的吧,VBA作為一種指令碼語言至少是20年前的東西了,20多年來沒有什麼更新,不論是在語法上還是在理念上都和現代的
VB.net
、C#差異很大,基本上只適用於在office平臺上解決些問題,對操作office有更好的支援,僅此而異;如果你學習的是一門現代的語言,不論是C#還是VB.net
,透過第三方庫操作office只是它的一種用法而已,能幹的事情會更多,處理起來速度更快,效率更高,有人會拿VBA支援事件來說事,但是要知道但凡需要介面事件等來操作的,編製成軟體後錄入才是更好的方法,而不是在一個表格中折騰。軟體連線資料庫非常容易,不論是C/S還是B/S模式,給使用者的只是客戶端介面,資料永遠在公司伺服器的資料庫中,安全性更好,VBA想實現很難吧。
如果你已經會
Vb.net或c#
,那麼也只是可以看得懂部分的VBA程式碼,能寫點簡單的,如果只會VBA,那麼面對VB.net和 c# 程式設計,基本上需要重頭進行學習,原來的那些VBA知識基本上沒用。
不建議學Python的理由Python這兩年很熱很火,但是基本上不適合於普通使用者使用,特別是在windows平臺上,先說開發環境有很多不說,還有不同的版本支援,需要呼叫的第三方庫,中間的各種不相容等,如果對linux沒一點了解,還是不要碰它,Python實現影象介面有一定的難度,不如C#友好,寫好程式碼後製作成可執行軟體使用者互動差。
python的強大之處在於它的第三方庫非常非常的多,通常只需要很少的程式碼量就能解決問題,但它對普通使用者不友好。
c#和VB.net
這個也是微軟的親兒子,VS的IDE說第二沒人敢說第一,上手容易,介面也相當友好,透過簡單拖拽就能做出一個圖形介面,再引用第三方庫
Spire.Xls
、NPOI等處理起來Excel更是方便快捷,你完全可以把Excel中的資料讀入到DataSet中,然後在DataGrid中顯示出來進行處理,或者在後端處理,也可以直接讀單元格來處理,最後處理好的結果你是想儲存到資料庫中還是想存回原有的表格中,或者是根據某些條件批次生成大量的Excel檔案,都是相當容易的事情。最終想學哪個決定在自己,但是在學習之前找個VBA的手冊和C#的手冊都瀏覽一下,就明白自己該學習哪個了。
-
7 # Excel函式公式技巧
這一個還是要看具體的需求吧,其實VBA和python都是解釋型的程式語言,可以說學習的難度都不是很大。
首先,如果只是簡單的一些程式設計,且還是更多的希望基於excel做一些資料處理及分析,VBA不愧是一個很不錯的選擇,況且個人認為VBA有一個非常好用的功能——錄製宏,很多工作表的操作都可以通過錄制宏實現,省了很多查閱手冊的時間。如果是編寫一些不太複雜的業務管理系統的話,excel vba是完全可以搞定的,本人也釋出了透過vba實現進銷存管理系統的系列課,感興趣的可以檢視。
其次,再說說python語言。個人認為python語言比較大的優勢是各種庫非常豐富,透過呼叫各種庫,可以用很簡短的程式碼實現複雜的功能。同時,python裡面的numpy、pandas等科學計算庫,為我們做資料分析也提供了強大的支援,同時Matplotlib庫提供了強大的繪圖功能,能輕鬆繪製出各類美觀的圖。所以說,如果要進行科學計算分析的話,python也是一個不錯的選擇喲!
-
8 # 浮生若夢01975
必須Vba,office自帶,有點basic基礎(貌似大學都要學,高中資訊結業考試就是考basic)很容易上手,網上資源教程也多,office自帶的幫助文件也很全面。vba很強大,連線sqlserver毫無壓力;可呼叫系統API;使用ActiveX控制元件等等。VB6的功能它基本都能實現。當然和vb.net比肯定有差距了,比如原生多執行緒,繼承等等。
執行效率只能說一般,前幾天遇多一個20多萬行的表,50多M(也是醉了……),啟用了宏,開啟就要半個多小時,當然也可能是他沒最佳化好,還在研究中,擬採用Sqlserver。
作為一名財務人員,平時需要處理大量的資料,主要是使用excel處理資料,請問學習VBA好呢還是學習python好呢?
目前Excel會使用30-40種函式,會資料透視表,資料處理目前是夠用,但是想深入一些,後期預估會用到。
感覺VBA程式碼不如python好理解,但是聽說VBA與Excel的契合度比較好。請大家推薦一下,並說一下推薦理由。
回覆列表
剛好這兩個我都接觸過,推薦python
vba優勢是office自帶開發環境,安裝省事,但是程式碼看著頭疼,定義變數就把我卡在門外了。
python的話,網上很多安裝環境的教程,使用anaconda自身整合好多包,我也是處理資料的工作,使用起來很舒服。原來各種彙總篩選統計,搞得頭大。重複工作沒意義。現在都交給指令碼處理。省下時間繼續學習python,偶爾看看自己寫的程式碼,權當複習。原來每天4、5個小時的工作,現在嘛,按秒計時吧。
python最大的優勢就是語言很容易理解,語言邏輯清晰。按照自己的需求編寫需要的程式,工作不要太省力。
python是弱型別語言,簡單說就是定義的變數可以賦值各種型別的值。vba恐怕不行。
如果你的電腦配置不是特別差,還是使用python吧。聽說是比什麼C\C++需要執行慢,那也是對比。如果只是自己處理資料,python首選。