首頁>Club>
5
回覆列表
  • 1 # 沒有你的日子真的好孤單7

    VisualBasicforApplications(VBA)是一種VisualBasic的一種宏語言,主要能用來擴充套件Windows的應用程式功能C語言是一種高階程式語言

  • 2 # Excel到PowerBI

    任何一項技能,都有其存在的理由,不要因為某個人的否定而否定,尤其是在還有很多人的肯定的情況下。通常是懂A的人可能不懂B和C,懂B的人告訴你不要學A和C,而懂C的人覺得A和B沒有用……

    計算機專業的人告訴你python更加強大,往往是因為他自己不需要大規模應用Excel(說實話,我在軟體行業和專案上碰到太多的開發大牛都不精通Excel,因為他們根本不需要用),所以,這種建議該怎麼採用,自己要學會辯別。

    的確,如果單純從一門程式語言的角度來說,python是比VBA強大不止一丟丟,但是,當你日常處理資料大部分都是在Excel上時,python是強龍,VBA卻是地頭蛇!

    所以,一樣東西的強大與否不是你學不學的理由,而是哪一樣更適合你的需要。

    接著再看Excel內的事情,包含的技能除了日常功能、函式之外,還有VBA和現在的Power系列。現在,對於大部分的使用者,我個人更加推薦Power系列的學習,優先於VBA。為此,我翻譯過一段文字:

    最近,一直有朋友問我到底學不學VBA,我一般不建議他們學,除非對程式設計很感興趣,或者本身已經有一定的程式設計基礎,否則,將耗費大量的精力,而收效甚微。

    恰巧,最近在一本比較專業的書上找到關於Excel函式、VBA以及Power Query在資料匯入、清洗、轉換方面的一些描述和對比,翻譯如下,供參考:

    黑魔法的好處和危險

    Excel可用多種不同的技術來實現魔法般的資料處理——有時單獨使用,有時組合使用。這些魔法包括:

    Ø Excel公式——是技術人員經常利用的第一種技術,如VLOOKUP、INDEX、MATCH、OFFSET、LEFT、LEN、TRIM、CLEAN等等。雖然公式往往被大多數Excel使用者使用,但公式的複雜性因使用者的經驗和思路差異很大。

    Ø Visual Basic應用程式(VBA)——這種強大的語言可以實現強大而動態的資料轉換。 VBA技術往往被高階使用者使用,需要掌握一整套的語法規則。

    Ø SQL語句——SQL是操作資料的另一種強大的語言,特別是用於選擇、排序、分組和轉換資料。但是,SQL通常只被高階使用者使用,甚至很多Excel專業人士都不知道該怎麼去應用,SQL也通常被認為是資料庫專家的獨門武器,儘管每個Excel專家都應該花一點時間學一學。

    所有這些工具都有一些共同點:多年來,它們基本上是唯一可用的資料清理和轉換工具。儘管這些工具非常有用,但也存在兩個嚴重的缺點:需要較長的時間來掌握技術和建立解決方案。

    雖然可以使用這些工具來建立自動化的原始資料匯入解決方案,但這往往需要經過多年的高階語言學習以及耗費大量的精力來進行範圍界定、開發、測試和維護相應的解決方案。取決於解決方案的複雜性,資料匯入格式的微小變化,或希望擴充套件原有解決方案來適應更多資料來源可能是一件很可怕的事情。

    在公司中,有一個所謂技術大神反而是一個隱藏的危險,這個人可能會建立一套令人驚歎的解決方案,直到他離開公司很久才出現問題。然後,公司的其他人發現根本搞不懂這套方案,也就沒有人能在出現問題的時候再搞定它。

    另一方面,大部分負責資料整理的人沒有時間或機會學習這些先神奇的技術,結果,這種崩潰後無人能修復的大系統,還不如用一些簡單基礎的技術來重複處理和匯入資料,即使要花費幾個小時、幾天、幾個月甚至幾年的精力及成本。

    但是,花點時間,想想你公司每月花費幾個小時在Excel中進行重複的資料匯入和清洗任務。將這些時間乘以你公司的平均工資率……以及全球範圍內的公司數量……你又會發現,這個成本非常驚人。

    我們希望有一個能應對以上矛盾的產品,既容易學習,其他人又容易接手並且理解障礙很少,又能實現自動的資料匯入和清洗,使得你可以更加集中精力於資料的利用和增值——這個產品就是Power Query。

    未來轉變

    我們花了數年時間使用黑魔法構建解決方案,但Power Query將改變遊戲規則,原因有很多,其中之一就是學習速度。

    當涉及到資料匯入、清洗和轉換以便分析時,您學會Power Query的速度比Excel公式還要快,用於處理多種複雜資料來源等情況時,比VBA要容易的多。

    學習曲線示意圖

    學習建議

    總的來說,我個人的建議是:

    Ø Excel公式當然要學,因為那是最基礎也用的最多的東西。

    Ø Power Query和VBA的問題上,優選Power Query。

    Ø 學有餘力或對程式設計很感興趣,再學VBA。

    除了上面提到的Power Query,還有Power pivot等等。你可以多點去了解。

    總之,適合自己的才是最好的!

  • 3 # 芝士燉知識

    VBA沒有過氣一說吧,但上手難,題主是想做資料統計分析和自主開發系統嗎,Excel資料多了容易崩,系統的話它不支援協同作業,到時候資料分析好了走工作流共享也是問題,其實現在市面上已經推出一種上手簡單的Excel操作模式的開發平臺了,兼具所有Excel功能,可以萬能資料透視分析,並且用畫表格的方式就可以自主“畫”出企業管理系統,根本不用你去學習VBA、Python程式設計,給題主推薦一款永久免費的吧,叫雲表企業應用平臺,簡稱雲表。(文末有永久免費獲取方式)

    雲表高能在哪裡

    1、夠簡單。你只要會中文,用過Excel,就可以透過畫表格的方式自己上手開發企業管理系統了,無需寫程式碼,也無需任何程式設計基礎。

    2、夠自主。很多企業購入傳統軟體往往花費高昂,又因為經營和業務模式的特殊性,想用的冷門模組傳統軟體沒有,它有的很多功能企業又用不到,自己搭建模組就不同了,只要你熟悉企業業務,需要什麼功能就搭建什麼,還能隨拆隨建,讓軟體完全契合我們的企業發展。

    3、夠節省。既然不用寫程式碼程式設計,時間成本、人力成本,金錢成本自然都大大的節省下來了,真正的省時省力又省心。

    4、夠強大。除了上述的資料透視分析、工作流、許可權設定、資料共享,雲表還能連結網路,為企業徹底解除資訊孤島,又能與主流資訊系統無縫整合,保護企業原有的資料資產,還可以搭載多個管理系統,避免企業使用多個軟體麻煩,也能一鍵生成手機app,幫助企業實現高效快捷的移動化辦公,更主要的是,它支援二次開發,永遠陪伴企業的發展與進步!

    雲表的應用領域覆蓋全行業,生產製造、餐飲、汽修汽配、學校、醫院、寵物店、房產中介、健身房、水果店……無論你想要什麼樣的系統,OA、ERP、進銷存、薪資核算、成本管理、CRM、裝置管理系統EAM,固定資產管理,供應鏈管理,倉庫管理WMS等等,雲表一定可以給你最優質的資料分析處理和系統管理體驗!

    有很多大企業和高校都在使用雲表,如華為、中鐵、中冶、中國電信、華風氣象、中國普天,中國電波傳播研究所,燕山大學……

    說了這麼多,希望可以真正幫助到題主和有需要的朋友,下面就是軟體和培訓永久免費獲取方式。

    雲表永久免費軟體和培訓獲取方式如下!

  • 4 # 望月兄

    Python是真的非常強,Web開發、圖形處理、人工智慧、爬蟲、資料分析,PC軟體開發,只有想不到,沒有做不到。

    而VBA顯得就磕磣了,侷限於Office,離開了Office真得好像就舉步維艱了。

    但是一切都是應該根據目前的業務狀況來的。如果各部門都是在用Excel,傳輸到需要處理的檔案也都是Excel,又何必使用Python,因為用python最終還得使用類似xlsxwriter、pandas類似的庫來呼叫Excel資料,而且操作的時候遠遠沒有使用VBA好除錯。

    大家可以核定一下,假設是這種不痛不癢的小工具,真的沒必要python。用python反而會浪費大量的時間。

    所以真如下面各位說的,python是強龍,vba是地頭蛇,地頭蛇的地盤上,還是地頭蛇吃得比較開。強龍想要來攪和一下當然可以,但是雷聲大雨點小,因為需要的需求就這麼點,何必殺雞用牛刀又不好除錯呢。

    關於自學需要多少時間,其實vba很簡單,只要學習3天,一般的多sheet合併就可以做了。另外,很多東西網上都有的,只要看得懂,會錄製宏,複製貼上改一下,可以解決99%的問題。

    所以總結建議一下:

    做和EXCEL非常強關聯的工作的話就學習VBA!如果是研發的同學,早點拋棄VBA吧,這不是應該你們來寫的。。就我目前公司的人,開發是不會寫VBA的,一般都是業務員會寫。

  • 5 # 雲表平臺

    說實話,VBA已落幕了!

    有那功夫不如學點別的工具,好學實用面更寬!(文末有免費高效工具)

    如果想讓資料分析更強大更高效,可以用雲表。其實叫雲表企業應用平臺,看到平臺二字,就能感受到很高階很強大了吧!

    當然,這確實是一個了不起的工具,但是比VBA和python都要好學哦,因為完全不用寫程式碼的。

    畫表格做分析,做軟體,做APP。

    多使用者操作+流程+許可權,說白了,就是用電子表格實現了程式設計,即有表格工具的便利易學,又有程式語言的強大。你想讓他幹啥都行,比做常見的企業資料收集分析統計,協同辦公OA,ERP,,。。種種行業軟體都能用畫表格的方式做出來。

    20萬+企業實力見證

    由WPS創業團隊出品,來自金山的血統,技術實力自不必說,國內國外500強企業驗證,各種複雜場景的實際應用,都見證的雲有的實力。

    如果你是沒有什麼技術能力的普通使用者,或者具體程式碼能力的程式設計師,那這個雲表都能適合你哦。就算不會,官方也提供免費教程和線上培訓,不用花錢,正在普及中,早學早受益。中國企業使用者已達20萬+,企業需求正在擴大,因為不用程式碼,雲表很好的解決了企業需求的快速變化,讓管理軟體個性化成為現實。

    方法2、PC端可以直接複製以下連結https://www.iyunbiao.com/signup/6RFE8Q931

  • 6 # 上班下班

    VBA確實是還是辦公利器!

    但是VBA不同於函式公式、基礎技巧、和資料透視表,他適用於重複、批次、自動化的的工作內容。

    比如你有很多工作表,需要設定列印格式,每張工作表的列印格式都一樣,那麼用VBA批次設定絕對方便、省時;

    再比如,你有很多資料需要跨表設定公式連結,這個會基礎操作的都可以完成,但是在資料量很大的情況下,是很費時間的,手工處理也容易出錯,利用VNA也是不錯的選擇;

    再或者你想在錄入資料時自動根據錄入內容設定格式,也可以用VBA在後臺設定好程式碼,當你錄入內容後,自動新增邊框、設定顏色、保護已錄入的資料等;

    還有,VBA可以像VB程式設計一樣,面向物件的形式,在窗體上繪製控制元件、設定程式碼,來實現一些直觀的資料錄入、查詢功能……

    以上內容,除了VBA當然還有其他方式能實現,但是VBA是相對比較簡單和方便的,只要安裝的完整版的MS Office。或者專業版的WPS,開啟VBE編輯器就可以直接寫程式碼,不需要配置環境、不需要其他外掛,儲存後再另外的電腦上還可以直接使用。

    由於現在能用於EXCEL上的程式設計需要越來越多,一些很火爆、很熱門的需要讓不少人覺得VBA已經過時了。

    其實不然,我們用這些工具的目的是解決問題,利器就是能解決問題的工具,而不一定是新工具。比如高鐵這個出行工具比腳踏車要新吧,但是你騎腳踏車可以入大街小巷、高鐵行嗎?當然,只靠騎腳踏車也到不了高鐵能到的地方,除非你出門就靠騎行(兩者不能相互取代,根據需求使用各自的優勢和特長罷了)。

    VBA被微軟整合到Office中,已經和Office成為了很好的搭檔,但是隨著64位Office的普及,微軟並沒有對VBA做相應的升級和支援,尤其是某些控制元件不支援64位的Office。按照這種情況發現下去,Office可能會和VBA漸行漸遠,也會出現其他工具替代VBA。

    所以,我們需要不斷的學習,才能跟得上Office的更新和發展。

    但是,就目前而言,VBA還是利器。

  • 7 # 科技i關注

    明確的告訴你,VBA絕對還是excel的操作神器!

    雖然,現在python出來了,而且在程式編寫上來說,也比vba要有許多優勢,比如:更為語義化的語法,更完善的編輯器,各種功能的模組……但是確實也有一些劣勢,比如:不是excel原生語言,執行環境苛刻(尤其是國內wps橫行,各種問題層出不窮),不利於交流(如果對方沒有執行環境無法執行),模組開發缺乏標準化等等,這些都是制約著python發展的一些問題。除非微軟老大能統一標準,直接植入python到office平臺,否則目前來說在excel中呼叫python還只能是民間使用的工具之一。

    而vba的話,畢竟是微軟的親生兒子,各種執行環境非常的完善,可以說是隻要做好一個模組,直接把這個excel檔案傳送給朋友,只需要對方用的也是excel,就能直接執行,不需要額外安裝其他任何東西了。當然,這裡要排除wps,畢竟功能上被閹割太多。

    vba在語法上來說也還算比較簡單。畢竟當年程式設計入門選的大多數是basic語音,而vba就是在basic語音的基礎上進行拓展的。然後在高深一些功能的開發上,vba也能非常容易的呼叫windows本身的各種api函式,實現各種神一樣的功能,甚至是:爬蟲、修改器、外掛……所以說,沒有不好用的語音,只有不會用的人!

    對此,我給樓主的建議是,先不需要羨慕python,踏踏實實的用著vba先。除非哪天微軟把python引入到office中來。否則,只要精通vba,office一脈辦公軟體任你遨遊!

  • 8 # 帆軟軟體

    很多用Excel的人都是不會VBA的,比如你隨便去某個公司問問30歲以上的員工,你看看誰會用VBA。

    不是說VBA不行,它能提高效率,但是對於資料分析和資料處理來說,遠遠沒有用。

    就舉個例子吧,以前我考計算機二級證書,VBA考了98分,可是現在依舊用不好Excel,我根本想不到我工作中的某個場景能讓我去使用:dim x as,end if這些複雜的程式碼。

    我工作中經常遇到老闆要你幾分鐘給出一個統計結果,並有簡單分析。

    而且用python,也不是一個零基礎的人能承受的學習成本。

    所以,高效處理資料,還能視覺化分析資料,並且要簡單的方式,我能想到的就只有FineBI了。

    具體它是什麼,你應該也知道的差不多了。

    它是怎麼操作的,就像上面這樣,拖拽就行了。

    所有東西都在變,要去接受這些變化的。

  • 9 # BtOfficer

    1、Office是通用軟體,幾乎通用軟體都會配置指令碼語言,以解決定製化不足的問題。Office如此、AutoCAD如此,ArcGIS也是如此。2、Office即使放棄VBA也得另尋替代品,目前沒有,官方也從未說要放棄。即是放棄,龐大的生態,也會讓對手有機可乘,誰會這麼傻?3、VBA就是Office的官方開發語言,是BASIC經過幾十年的發展,專門針對Office進行設計。近水樓臺先得月,Windows上很難有替代品能超越VBA。4、VB6、C#、Python等其他獨立開發工具,都是透過COM介面進到Office,程式碼執行速度都比VBA快,但無一例外都失去了VBA的優勢。VBA把這個介面圖形化了,然後擺好姿勢,如果不看不用,那實在是沒法了。

    覺得VBA姿勢不足的,看這裡《VB/VBA,請讓我點名表揚你 》。至於Python與VBA的適用問題,請看《Python取代VBA?先問C#答應否 》

  • 10 # 囡囡做遊戲

    個人認為算,很多情況下VBA都被用來處理重複勞作。

    無需格外的開發配置,可以直觀快速建立原型,基於這些優點,是其他輔助開發方式所不能比擬的。

    但VBA的語法陳舊,IDE的程式設計體驗不能與現在的開發工具同日而語。

    所以如果熟悉.Net開發的話,有Visual Studio這種宇宙第一IDE加持,C#那甜甜的語法糖,進而VSTO是當前替代VBA進行Office二次開發的最佳方式。

  • 11 # 匯聚魔杖

    我說VBA過氣了,相信會有很多人會開始對我口誅筆伐。VBA曾經確實輝煌過,要知道十幾年前就連AutoCAD、CorelDRAW也一度非常支援VBA宏,後來AutoCAD迴歸到了Lisp的懷抱中,CorelDRAW也認清了要平面設計師寫宏命令是一個非常不切實際的奢望。

    VBA的老大哥VB已死,而小弟Small Basic只能堪當玩具肩負教育的責任,從Small Basic首頁奇葩“SB”字樣的烏龜人標識就可以看出它註定不能成為一個生產工具。

    Office Scripts才是微軟所看好的未來,而VBA僅允許苟活。在Office Scripts還沒有支援桌面版的Excel的情況下,放棄VBA直接改用Python無疑是更好的選擇,學成之後還能從一個會寫宏命令的屌絲搖身一變成為一個“大資料工程師”。

    VBA在Excel裡的作用

    VBA是一種宏,但宏未必就一定是VBA。宏源於“marco”,是一種批處理的稱謂,指將小命令、動作轉換為一系列的指令。VBA可以減少Excel很多重複性的工作,讓Excel簡易化、自動化、智慧化,這樣Excel就可以完成它自身功能無法完成的複雜的任務。

    VBA是基於Visual Basic(VB)發展而來,VBA是VB的子集,所以它們具有相似的語言結構。VBA的出現主要是用來擴充套件Windows自帶軟體的功能,特別是Office軟體。1994年集成了VBA宏命令的Excel 5.0釋出之後,Office起飛了,可以說Office之所以能夠佔據這麼大市場份額很大一部分原因在於VBA,有了VBA之後Office能做的事情就多得多了,對於很多使用Word、Power Point、Excel的人來說,掌握了VBA就可以讓複雜的工作變得簡單,也可以減少很多不必要的重複性工作,大大提高工作的效率,所以就有人很形象的將VBA比作Excel的“遙控器”。

    在網際網路時代到來之前VB依靠著“所見即所得”的開發環境成為了一款巔峰時期擁有300萬開發者的熱門桌面開發工具,和Windows的強強聯合使得VB很長一段時間都對競爭對手保持壓制的態勢。但網際網路時代到來Java等語言開始興起,VB的優勢逐漸喪失,於是微軟推出了.NET併發布了.NET版的VB、C#,C#逐漸取代VB,導致最後很難找到VB原始碼示例。最終微軟在2017年宣佈VB終結的命運,既然老大哥倒下了,可想而知VBA的命運也不會好到哪裡去,在程式設計師的鄙視鏈中“彙編>C>C++>Python>Java、C#、PHP>VB>HTML”甚至都找到VBA的身影。

    Python為什麼比VBA香?

    VBA在過去確實很香,有特有的錄製宏功能,可以和Office完美的結合,擁有完整整合的開發環境,語法成熟固定沒有開源語言的升級煩惱,另外它也沒有碰到過強大的競爭對手。但有了Python、C#、Java做對比之後就發現VBA的語法功能單一、程式碼量大,可擴充套件性很長。尤其是涉及到操作Excel外的物件,就需要寫非常多的程式碼了。

    Excel使用Python之後可以享用Python生態系統下面的一切工具,尤其是資料處理這塊。比如可以用Pandas資料套件來處理Excel,可以在任何你喜歡的編輯器裡寫Python指令碼,記事本都行,這樣我們就再不用碰陳年難搞的VBA編輯器。

    Python的宏指令碼可以版控、集中整理,而不會隨著Excel文件散落在其他地方,Python指令碼還可以透過xlwings呼叫Excel公式。

    總結

    VBA到如今依然算是辦公利器,也依然有很多人在使用VBA。VBA確實過氣了,Python確實是比VBA要強大太多,效率也更高一些。但有句古話“殺雞焉用牛刀”,僅僅如果只有幾千行資料,還要搭個Python環境就顯得有些過了。

  • 12 # 木子教程

    VBA 介紹

    VBA是一種程式語言,得益於MS Office極高的普及程度,全世界有超級多的人在使用它,用來實現各種辦公自動化的動作。同時對於非計算機相關專業的人來說,VBA是一種最簡單的程式語言了。

    簡單來說,VBA是一種你花較短時間學習,就能開始產生效果的知識。因為大多數人都已經有了一定的Excel基礎知識,而這些會讓你在學習VBA的過程中更容易,更有優勢的是錄製宏功能直接幫你把手工操作轉成VBA程式碼!

    VBA發展

    在微軟官方的社群/活動中,這些年來很少有涉及VBA的相關活動,包括微軟對於使用者給出的很多VBA改良建議似乎也都被忽略了。

    另外從2010、2013、2016、2019、365的版本更新情況來看,微軟對於VBA的更新策略更偏向於維護物件模型,即有什麼新圖表、新工作表函式等就新增進去而已,即是一個最低維護更新的策略。所以微軟過去10年來的這種對VBA的更新態度,確實令到很多人都覺得VBA要被拋棄了~

    甚至早些年傳出了用Java、Python來代替VBA,、

    VBA會死嗎?

    至少10年它都還會在!為什麼?因為:

    企業方面。太多的公司在依賴VBA實現辦公自動化流程;尤其是華爾街的那些金融機構,甚至世界500強公司,很多都有在使用VBA去進行自動化的操作,投入了大量的成本/時間;當然還有很多的業務邏輯/分析邏輯也是關鍵!微軟不敢輕易去完全擺脫VBA!

    使用者方面。前文就有講過,其實學習VBA的人大多都不是專門的程式設計師,而是財務、人力、營銷或專案管理的專業人員,大家學習VBA的出發點是為了讓工作更高效,更輕鬆!而這些人群並不會習慣一直學習新的程式語言,因為這是需要佔用很多業餘時間學習!這也是微軟需要考慮到的!

    總 結

    1、VBA在未來10年仍然會被廣泛使用,作為實現辦公自動化的重要技能

    2、VBA永遠不會完全消失,因為太多的企業、使用者都投資了大量的時間和成本

    3、微軟在考慮替換VBA,但進度還是很緩慢的

    4、想學習VBA的朋友,請不要猶豫,這肯定是值得你覺得的知識!只要你的主要辦公軟體是MS Office

  • 13 # Excel和VBA實戰

    必須還算是辦公利器.

    VBA 只要Office存在,只有宏的概念還存在, 它就不會過時,總有人群需要使用.Python是專業的開發工具,如果你是專業人員,那麼在大資料分析方面,它效率體現是非常令人滿意的. 我強調一下,我說的大大大資料! 如果只是普通級的資料,能Python分析, 寫程式的時間,人家VBA已結束了.

    能被定義為"辦公利器", 首先它必須要能幫助到我們在日常工作中解決某些棘手的問題.

    相反,世上再好的工具,如果我不知道/我不會用/它解決不了指定的問題,對於我們本人而言就不是個辦公利器,只是別人的利器,對自己無利,直接點講,可能也是職場競爭的一個籌碼之一.

    能作為自己的利器,也不能只是說你有,你會,它就是利器了. "利器"不經常用,會鈍,會鏽,就不利了,所以一定要經常使用,保持它的鋒利性.

  • 中秋節和大豐收的關聯?
  • 2克黃金吊墜有多大?