當(dāng)然要基礎(chǔ)的,因?yàn)閂BA里也有不少功能的實(shí)現(xiàn)依賴于Excel原始的函數(shù)、功能。
所以,最好先將excel中的函數(shù)學(xué)透了,再嘗試VBA。當(dāng)然,除了函數(shù)外,數(shù)據(jù)透視表、圖表制作也很重要!如下是筆者關(guān)于VBA學(xué)習(xí)的一些看法,僅供參考:1個月學(xué)會VBA,Excel從此小菜一碟/s/ (本文共計(jì)1400字,預(yù)計(jì)讀完需2分鐘)1 四大都相繼推出了自己的財(cái)務(wù)機(jī)器人,人工智能越來越火,試想一下我們每天的工作都由機(jī)器來完成,而你只需要看著機(jī)器工作就可以拿工資,而且還又快又精確,這是不是大家每天都夢寐以求的工作呢!這個公眾號就是為了和大家分享怎么創(chuàng)造專屬于自己的“機(jī)器人”。
不管是財(cái)務(wù)、人事、工程、金融,還是廣告、銷售、分析員等等。不要等著被機(jī)器人取代,先自己養(yǎng)一個機(jī)器人。
很多人會覺得VBA很難,但是他們卻沒有真正了解過VBA,能學(xué)會普通話的都能學(xué)VBA,因?yàn)樗彩且婚T語言,是人和電腦都能懂的語言。當(dāng)你真正地入門VBA,你一定會感嘆:原來VBA比學(xué)普通話還簡單!一個月學(xué)會VBA,絲毫不夸張 你所要付出的只是每天1到2小時 不需要精通英文,中文編碼也很有趣 大幅提升效率,立馬升職加薪2 這么簡單的VBA能做什么呢?NO°/13s內(nèi) 分類匯總1W條數(shù)據(jù) NO°/25s內(nèi) 將一個表里的數(shù)據(jù)分到多個表中 NO°/33s內(nèi) 創(chuàng)建1000個文件夾 NO°/4 自動 登陸網(wǎng)站下載圖片或者其他數(shù)據(jù) 以及自動發(fā)送郵件、自動鏈接其他軟件獲取數(shù)據(jù)等 ……更好玩,更高效,更方便(更裝13) VBA能讓辦公效率提升數(shù)倍甚至數(shù)百倍!VBA不是Excel的全部,確實(shí)每個Excel高手的拿手菜!Excel不是VBA的全部,但可以借助Excel來控制整個電腦!只要你用辦公需要用電腦,就該學(xué)會VBA!如果你需要處理大量數(shù)據(jù),VBA必須得用!如果你有模塊化、流程化、重復(fù)性工作,用VBA可以一鍵完成!除此之外,VBA還能操作其他軟件,以完成和excel的數(shù)據(jù)交換和一些重復(fù)性、流程化工作,比如用excel操作sap、用友、金蝶、foxtable等,以及用來導(dǎo)出數(shù)據(jù)和上傳數(shù)據(jù)。
3 VBA 雖然很強(qiáng)大,但并不是萬能的,有些工作用VBA 來做反而會變得更麻煩,因?yàn)槟阍谒伎剂鞒毯蛯⒘鞒剔D(zhuǎn)化為VBA 語言的時候,也是需要花費(fèi)時間和精力的。所以學(xué)了VBA 最大的好處就是你會不斷地思考自己的工作流程,學(xué)會在流程中找短板和瓶頸,然后做流程改進(jìn),將VBA用在恰當(dāng)?shù)沫h(huán)節(jié)上,從而大幅度提升自己個工作效率,這才是VBA將帶給你的最大改善。
上面提到的都有這些共性:重復(fù)、批量、可自動化!滿足這三個的任意一個,就適合用VBA,所以還有很多其他的工作都可以用VBA來完成,只要不是必須有主觀判斷的東西,計(jì)算機(jī)都能識別,然后自動將工作完成。你,準(zhǔn)備好和我一起探索VBA的神奇世界了嗎?那怎么學(xué)習(xí)VBA呢?剛才說一個月能學(xué)會VBA,我并沒有夸大VBA學(xué)習(xí)的簡單,筆者當(dāng)時學(xué)的時候用一周了解了基礎(chǔ)知識,一周后就在公司荷槍實(shí)彈開始寫代碼,雖然花了不少時間,但所幸最后成功了。
之后有了更多的學(xué)習(xí)機(jī)會,一個月內(nèi)用VBA練習(xí)各種簡單操作,到現(xiàn)在不說精通,常規(guī)工作也都輕車熟路了。以下是筆者的學(xué)習(xí)路徑及計(jì)劃安排,你一定也可以用它事半功倍地學(xué)習(xí)VBA4 VBA基礎(chǔ)篇1、vba理論基礎(chǔ) 了解宏 學(xué)會使用VBE編輯器 了解代碼寫法規(guī)范2、VBA中的簡單交互和debug inputbox(用戶輸入)方法 msgbox(信息對話框)用法 debug(調(diào)試)及立即窗口的使用3、變量 數(shù)值型變量 非數(shù)值型變量4、變量操作與運(yùn)算 數(shù)學(xué)運(yùn)算 比較運(yùn)算 邏輯運(yùn)算 包含運(yùn)算與等效 鏈接操作5、excel對象和事件 單元格對象及事件 工作表對象及事件 工作簿對象及6、循環(huán)語句 了解流程及流程圖 for循環(huán) while循環(huán) do while循環(huán) do until循環(huán) 循環(huán)的終止與跳出8、自定義函數(shù)及錯誤處理 函數(shù)與過程的區(qū)別 函數(shù)語法 函數(shù)參數(shù) 錯誤跳過 錯誤處理9、再看VBA的用戶交互 inputbox參數(shù)詳細(xì) msgbox參數(shù)詳細(xì) 以上內(nèi)容按系列更新 大家也可自己到資料區(qū)尋找適合自己的學(xué)習(xí)路徑和學(xué)習(xí)資源 筆者將持續(xù)為更新各種學(xué)習(xí)資料 包括VBA以及office套件資源。
VBA概述:VBA是Visual Basic For Application的縮寫,是VB在office中的運(yùn)用。
是基于Visual Basic For Windows發(fā)展而來的,VB For Windows是Microsoft于1992年推出的開發(fā)Windows應(yīng)用程序的程序設(shè)計(jì)語言,由于基語法簡單,易學(xué)易用,所以深受用戶的歡迎。而VBA和VB For Windows大體相似。
在Office2000之前,VBA在Word,Excel,Access等Office系統(tǒng)軟件中的運(yùn)用有些有同,但是到Office2000就統(tǒng)一起來了。Excel是第一個包含有VBA的應(yīng)用程序,自O(shè)ffice2000以后,Eexel,Word,PowerPoint,Access中已經(jīng)有了統(tǒng)一標(biāo)準(zhǔn)的宏語言VBA,其中Excel和Access的VBA最為成熟。
在Excel中VBA程序即可以存放有.xls中,也可以單獨(dú)以文本形式存放。對VBA的學(xué)習(xí),用戶首先必須VB有一定的了解(不過不必很專業(yè),畢竟經(jīng)常用Excel的用戶一般是辦公人員,不可能是專業(yè)編程人員),然后結(jié)合宏記錄器學(xué)習(xí)。
因?yàn)?,宏記錄器可以記錄宏,用戶可以非常清楚了然VBA的很多知識。另外,如果不是功能很強(qiáng)大的VBA程序,那么用宏記錄器就足夠了。
打開密碼記錄器的方法,通過“工具->宏->錄制新宏”。另外,用戶可能用“工具->宏->宏?!?/p>
來管理宏。用“工具->宏->VB 編輯器”或Alt+F11可以打開VB編輯器,在VB編程器,可以很方便地整個VB工程進(jìn)行管理,可以方便地編寫VBA代碼,另外,用戶可以再點(diǎn)擊Alt+F11切換到Excel窗口。
VBA的使用過程: 1、創(chuàng)建一個Excel文件。 2、創(chuàng)建一個控件,然后雙擊控件或是右擊該控件,點(diǎn)擊“查看代碼”,就可以對該控件的某個事件,如click,keydown等。
進(jìn)行編寫執(zhí)行代碼了。創(chuàng)建控件的方法是,點(diǎn)擊“視圖->工具欄->控件工具箱”,打開“控件工具箱”欄,然后就可以直接拖動某個控件到Excel單元格中去。
在Excel中窗口,添加的控件一般是處于執(zhí)行狀態(tài)的,如果要對這個控件進(jìn)行編輯,除了第一次建立的時候可以對它進(jìn)行屬性編輯外,打開“控件工具箱”,也可以使控件處于編輯狀態(tài),如果還不行,可以再添加一個控件,然后已有的控件絕對會處于編輯狀態(tài)。當(dāng)然,對控件修改完畢后,別忘了刪除剛才新添加的沒有用的控件。
在編輯狀態(tài)中,你可以右擊該控件,點(diǎn)擊“屬性”,那么就可以打開屬性窗口,在這個窗口里,你可以很方便的對這個控件的名字,標(biāo)題,大小等屬性進(jìn)行編輯。 3、手動或用宏記錄器對該控件的某個事件進(jìn)行編碼。
宏記錄器簡單易用,不過強(qiáng)大的功能還是必須手動編寫VBA。VBA對象介紹: 編寫VBA代碼的最關(guān)鍵在于靈活運(yùn)用VBA對象,對這些VBA對象的屬性或方法進(jìn)行操作。
另外,你也可以創(chuàng)建自定義函數(shù),來對某些操作進(jìn)行封裝。既然是VBA,編碼風(fēng)格當(dāng)然和VB相同,如果會VB,那么只要對VBA的對象比較了解,就可以編寫功能強(qiáng)大的VBA程序;同樣,如果不會VB,那么,只需要了解VBA的對象就夠了,因?yàn)樗容^簡單易學(xué)。
以下分別討論VBA各對象對其屬性與方法: 在一些可以包含其他對象的窗口對象中,有幾個特殊的屬性,其屬性值是當(dāng)前活動對象,對它們,可以直接引用。表1 一些特殊的屬性 對象名 含義 ActiveWorkbook 當(dāng)前工作簿,即如果你打開了幾個Excel文件,那么你當(dāng)然正在編輯的Excel文件即ActiveWorkbook ActiveSheet 當(dāng)前工作簿中的當(dāng)前工作表,即當(dāng)前編輯的Excel文件中正在編輯的工作表 ActiveCell 當(dāng)前工作表中活動單元格 ActiveChart 當(dāng)前工作簿中的活動圖表 Selection 當(dāng)前被選定的對象 下面詳談各對象及它們的屬性和方法 一、Application對象 此對象指Excel應(yīng)用程序的工作環(huán)境。
屬性 1.Caption屬性 含義:Excel應(yīng)用程序標(biāo)題欄顯示的文本。 舉例:Application.caption=“船員管理系統(tǒng)”,如賦值Empty,則恢復(fù)Excel默認(rèn)的標(biāo)題欄。
2.Cursor屬性 含義:Excel中鼠標(biāo)的形狀。 表2 Cursor屬性 屬性值 鼠標(biāo)形狀 xlDefault 缺少型值,鼠標(biāo)呈缺少形狀 xlWait 等待型值,鼠標(biāo)呈不斷翻轉(zhuǎn)的沙漏形狀 xlNorthwestArrow 箭頭型值,鼠標(biāo)呈標(biāo)準(zhǔn)箭頭形狀 xlIBeam 文本型值,鼠標(biāo)呈“I”字形以等待用戶輸入文本 操作:Application.Cursor=xlWait等。
3、DisplayAlerts屬性 含義:用以確定是否顯示系統(tǒng)的應(yīng)用提示和警告信息,如果不想顯示,則把些屬性設(shè)為false,反之亦然。4、DisplayFormulaBar屬性 含義:用以確定是否顯示公式編輯欄 5、DisplayScrollBars屬性 含義:用以確定是否顯示Excel的滾動條 6、DisplayStatusBar屬性 含義:用以確定是否顯示Excel的狀態(tài)欄 7、EnableCancelkey屬性 含義:用以確定是否允許用戶中斷正在執(zhí)行著的VBA程序。
缺省情況下,在VBA程序執(zhí)行過程中,用戶按下Ctrl+Break能夠中斷VBA程序的執(zhí)行。此時此屬性即值為xlInterrupt。
若要禁止中斷VBA程序,由賦值為xlDisabled;若需要VBA執(zhí)行過程中遇到錯誤進(jìn)中止,由賦值為xlErrorHandler8、ScreenUpdating屬性 含義:用以確定是否顯示VBA程序的中間運(yùn)算結(jié)果。 9、StatusBar屬性 含義:設(shè)置狀態(tài)欄的文本 10、ActiveWorkbook屬性 含義:如表1介紹。
11、ActiveSheet 含義:如表1介紹。 12、ActiveCell屬性 含義:如表1介紹。
13、ThisWorkBook屬性 含義:用以返回正在執(zhí)行著VBA程序。
下面是我多年前自學(xué)VBA的方法(多看HELP):
1. 點(diǎn)菜單的工具,宏,錄制宏,做一些簡單的動作,如在A1輸入1,在B1輸入
=A1*2,將B1的字體顏色設(shè)為紅色,停止錄制。同時按Alt和F11進(jìn)入VB界面,在左上窗口找到模塊一,雙擊,右邊窗口出來了你錄制的宏的代碼。懂
英語最好了,一句一句就象白話文:)
在任意一個單詞前,按F1,就會有幫助。
2. 裘伯君說:編程只需掌握判斷語句。VBA中典型的判斷語句如下:
if 某條件
then
一些語句
else
又一些語句
end if
簡單的if語句可以是
if 某條件 then
一
些語句
end if
更簡單的判斷語句為
if 某條件 then 一語句
舉例,在你錄制的代碼處粘貼以下
宏:
Sub Test()
If 5 > 2 then Msgbox "I Love U!"
End Sub
按
F5運(yùn)行此宏,你會看到一消息框,“I Love U!"
所有的操作無非是一大堆邏輯判斷,即If語句中再套If語句。
3.
除了判斷語句,還應(yīng)掌握循環(huán)語句,應(yīng)為電腦擅長的就是重復(fù)工作:)
粘貼以下代碼在有你錄制宏的地方:
Sub Test2()
for
i = 1 to 10
cells(i,1)=i
cells(i,1).font.colorindex = i
next i
end
sub
把宏的窗口變小些,讓你能看到Excle表格的A列,在宏的窗口中重復(fù)按F8,看Excle里的變化。
For 。
to 。
一些語句
Next
是經(jīng)典的循環(huán)語句,剛才那個代碼的意思是從1重復(fù)到10,其中Cells(i,1)是工作表中的第
i行第1列,font.colorindex你錄制的第一個宏里有的,就是設(shè)字體顏色。
另外,你可以多來QQ問問中搜搜,比如直接搜VBA,或者點(diǎn)我的名字看有哪些VBA的問題:)
聲明:本網(wǎng)站尊重并保護(hù)知識產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€月內(nèi)通知我們,我們會及時刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時間:2.688秒