首發 公眾號 :EXCEL辦公實戰
到底是VBA,還是Python?
類似的話題,還有操作EXCEL學者Python,還是VBA
現在學習VBA還值嗎?是否過期等!
這些問題,有很多粉絲在問,在知乎、頭條我都有寫過幾篇交流過。
今天我們就來系統總結交流一下。
首先,我簡單說一下,我自己吧。
VBA目前8年左右,Python主要寫爬蟲3年左右。
當然我也是辦公一族,還是“表哥”
財務人員,上到集團下到市場門店都有經歷
可以說幾乎每天都和EXCEL形影不離……
就根據自己的經驗,一起和大家交流一下。
在結尾部分,我也分享一下寫的相關代碼和操作EXCEL相關的Python庫
1、開發效率誰高?
> VBA作為一門腳本語言,office自帶,語法同歷史悠久的VB基本一致,相對於Python這樣一門真正的面嚮對象語言來講,學習成本較低。
> EXCEL中相關的操作80%可以錄製宏來完成,這裡的宏一定意義上的說,跟我們所講的VBA無差,這也就說明了,操作office,使用VBA效率更高,需要人工編寫的代碼也簡化很多,很多新手通過學習錄製宏,簡單修改便可入門,實戰應用。
> Python在操作EXCEL非純數據方面,也就是圖表、圖形、格式等方便,實在是不方便,很多主流的Python對此支持也不友好,甚至好多庫都不支持,這方便VBA則完勝。
2、學習成本誰低?
> VBA 屬於office套件原生自帶,更加專注,基本上原裝的東西相對於第三方,都要好一些。
> Python語言,語法簡潔,輪子多,這幾年也是一路攀上,基本上已經排進語言前幾名,這也是Python的一個優勢。但是作為辦公一族不要盲從,再簡潔,你還是要學習變量、數據類型、循環判斷這些基礎,想要操作office,你還要去學習專門的庫,比如xlwings、xlrd、Openpyxl等
3、學習難度誰大?
> 如果你沒有任何腳本或者編程語言基礎,那麼可以肯定都不簡單
> 如果只是操作一些文件的複製、整理、移動等,Python這方便成本更低
> 非要入門一門的話,優先考慮VBA,再學習Python
4、使用場景誰廣?
> 毋庸置疑,Python完勝,一門輪子遍地的語言,不管在人工智能、大數據、數據分析、金融分析、還是WEB開發都有非常廣泛的應用,雖然我大部分只是把它用來做數據採集。
> VBA主要還是專注於office這一個板塊,雖然也可以調用winAPI等來做一些擴展,但終究限制如此,難走出這個圈,也不推薦強硬走出,專業的事情,交給專業的工具去做。
Python和VBA部分語法,出兩個對線一下:
循環篇
<code>'VBA:1-100累加
Sub
totalData()
Dim
i As Integer, lgSum As Long
For
i = 1 To 100
lgSum
=lgSum + i
Next
End
Sub
/<code>
<code>Python
:1-100累加
i
=0
total
=0
for
i in range(1, 100):
total
+= i
/<code>
元素遍歷
<code> :每個元素加10
Sub
forEach()
col
=Array(1, 3, 5, 6, 7, 8, 10)
For
Each eve In col
eve
=eve + 10
Next
End
Sub
/<code>
<code>python:也有for
i
in
list,這裡使用列表推導式
[i+10
for
i
in
[1,
3
,
5
,
6
,
7
,
8
,
10
]]
/<code>
<code>Python:
使用Pandas讀取EXCEL指定列數據,部分代碼截取def
getSearchKey
(
self
): wb = pd.read_excel(self
.cp_file_path, sheet_name='leadsSC'
)return
list(wb['Company'
])/<code>
部分VBA實戰代碼:VBA自定義函數篇
部分Python數據採集篇:
操作EXCEL常用的Python庫對比:
番外話
這幾年EXCEl版本更迭,Power系列組件逐步內嵌,加上推的Power BI
不管是Power Query的數據清洗(ETL),還是Power Pivot的數據分析
或者是Power Map+View的數據可視化,無疑強化的office這個工具
一定程度上,也讓我們的數據分析工具得到了簡化和便捷,Power BI則是整合了這些內容,一體化,使用起來也是更加高效。
對於未來,我還是推薦大家去學習一下這些工具,有些場景,比VBA更加合適。
未來可期!
篇幅限制,我們就不再更多嘮叨,想必大家也對二者有一定的瞭解。
到處是“人生苦短,我用Python”
但是請不要盲從,你的應該學會自己去判斷。
Excel辦公實戰,高效辦公,每天進步一點點!
關注小編,下次精彩不迷路!
喜歡小編的文章,一定要點贊,關注,轉發
您的鼓勵是小編最大的動力!
THE END