檢測錄入數(shù)據(jù)的有效性:數(shù)據(jù)-有效性-設(shè)置
從外部數(shù)據(jù)源中導(dǎo)入數(shù)據(jù):數(shù)據(jù)-導(dǎo)入數(shù)據(jù)(或者是獲取外部數(shù)據(jù))
篩選數(shù)據(jù)-高級模式+選項(xiàng)#可進(jìn)行升降序排列基公、前十項(xiàng)or高于平均值的項(xiàng)条篷,還可以進(jìn)行分析
?
Lower函數(shù):字母轉(zhuǎn)化為小寫
Upper函數(shù):字母轉(zhuǎn)化為大寫
Trim函數(shù):刪除字符串之間的多余空格
?
Year函數(shù):返回年份值
Month函數(shù):返回月份值
Day函數(shù):返回一月中第幾天的數(shù)值
Now函數(shù):返回當(dāng)前系統(tǒng)的日期時(shí)間值
Today函數(shù):返回日期格式的當(dāng)前日期
宏是被存儲在Visual Basic模塊中的一系列命令和函數(shù)需纳。#類似于c中的一個(gè)函數(shù)
制作宏的方法:
1.錄制宏
#類似于錄像機(jī)芦倒,簡單易學(xué),甚至可以允許不懂VBA的人創(chuàng)建
2.編寫宏
在VBE開發(fā)環(huán)境中輸入操作過程的程序代碼
啟動(dòng)+安裝宏:開發(fā)工具
##個(gè)人使用:下載專業(yè)版然后再卸載(暫未驗(yàn)證成功性)
錄制宏:錄制新宏-操作-停止錄制
#可以刪除已錄制的宏不翩;編輯宏是指修改宏操作中的VBA代碼
在錄制宏時(shí)可以設(shè)置快捷鍵兵扬,快速執(zhí)行#優(yōu)于任何同級別的excel默認(rèn)快捷鍵
保存帶宏工作薄:正常保存數(shù)據(jù)后關(guān)閉excel彈出的窗口(VB項(xiàng)目),選擇‘否’彈出‘另存為’-在‘保存類型’中選擇‘excel啟用宏的工作薄’-保存
執(zhí)行宏之前可能需要:開發(fā)工具-宏安全性-信任中心-宏設(shè)置-啟動(dòng)所有宏-確定
執(zhí)行宏的操作可以使用圖片(可以是自己的)在進(jìn)行執(zhí)行操作#指定宏
實(shí)際上口蝠,也可以將宏指定給工作欄中的自定義按鈕#選項(xiàng)-自定義
加載宏:加載項(xiàng)
#在錄制宏之后保存時(shí)器钟,文件格式選擇可以選擇加載宏,就可以加載自己錄制的宏
#可以下載其他人制作的妙蔗,類似于python包傲霸?
?
?
?
?
?
VBA是office對象和VBA程序代碼之間互相關(guān)聯(lián)和交流的橋梁。
VBA的主要任務(wù)是通過編寫程序代碼來操作office對象,從而完成特定的任務(wù)操作昙啄。
#VBA是VB的一個(gè)分支穆役。其設(shè)計(jì)目的、開發(fā)環(huán)境梳凛、編譯執(zhí)行文件耿币、運(yùn)行方式、可用資源都不同韧拒。
對象:
Application對象:代表整個(gè)excel應(yīng)用程序
Workbook對象:代表excel工作薄
Worksheet對象:其包含在workbook對象中淹接,實(shí)際上就是workbook對象中獨(dú)立的一頁
Range對象:
Chart對象:代表圖表對象
集合:
Workbooks集合:表示在excel應(yīng)用程序中打開當(dāng)前所有的workbook集合
Worksheets集合:表示指定工作薄或活動(dòng)工作薄中所有的worksheet
Sheets集合:所有workbook對象+chart對象
使用對象的規(guī)則:
1.設(shè)置對象屬性:object.propertyname=value ?#工作表名稱.對象的屬性=對象屬性的值
2.獲取對象屬性:var_propertyname=object.propertyname #變量=工作薄.函數(shù)操作
3.使用對象的方法:object.method #工作表.函數(shù)操作
常量:const常量名 as 數(shù)據(jù)類型 = 值
變量:
Dim 變量名 as 數(shù)據(jù)類型;#會隨著程序的運(yùn)行結(jié)束而被清除
變量的生存周期:在代碼中從實(shí)用該變量開始叛溢,到該變量被計(jì)算機(jī)從內(nèi)存中刪除為止的這段時(shí)間塑悼;
Static 變量名 as 數(shù)據(jù)類型;#變量每次更新的值都能被保留下來
變量轉(zhuǎn)換函數(shù):函數(shù)名(表達(dá)式)
數(shù)據(jù)運(yùn)算:
算術(shù)運(yùn)算符:+雇初、-拢肆、*、/(除,返回浮點(diǎn)數(shù))、\(除问慎,返回整數(shù))刁卜、mod、^
#優(yōu)先級:^ ?-(負(fù)) ?\和* ?/ ?mod ?+和- ?&
比較運(yùn)算符:<庵朝、>、<=、>=攒庵、=、<>败晴、is浓冒、like
#優(yōu)先級:= ?<> ?< ?> ?>= ?<= ?is和like
連接運(yùn)算符:&和+ ?#語法結(jié)構(gòu): result=ex1&ex2 ??result=ex1+ex2
邏輯運(yùn)算符:and和or
控制語句:
1.判斷結(jié)構(gòu):
1)if condition then [statements]
#當(dāng)condition為true時(shí),執(zhí)行【statements】尖坤,否則什么也不執(zhí)行
2)if condition then [statements] else [statements]
3)if condition then[statements] else[statements] end if
#該語句與2)類似稳懒,但卻是以塊的形式表示的
4)if condition then[statements]else if condition then [statements]...else[statements] end if
2.循環(huán)語句:
1)do...loop語句
do[{while|until}codition]
[statements]
[exit do]
[statements]
loop
#類似于c中的while語句,還有一種必須循環(huán)一次的語句變形慢味,也可以進(jìn)行嵌套
2)for next
For counter=start to end[step step]
[statements]
[exit for]
[statements]
Next[counter]
#counter可以替換成i較好理解
3)for each ... next語句
For each element in group
[statements]
[exit for]
[statements]
Next[element]
3.錯(cuò)誤轉(zhuǎn)移語句
#就是在程序出錯(cuò)時(shí)场梆,忽略錯(cuò)誤或是將程序轉(zhuǎn)移到指定位置
1)on error goto語句
2)on error resume next語句
4.with語句
#其主要作用是簡化程序的代碼,增加可讀性纯路,并便于維護(hù)
With object
[statements]
...
End with
5.select case 語句
#類似與C中的switch或油,case語句
Select case expression
[case expressionlist-n]
[statements]
...
End select
程序根據(jù)有無執(zhí)行的對象分為模塊程序、過程程序驰唬、事件程序
模塊程序:
模塊是作為一個(gè)單元保存在一起的VBA定義和過程的集合顶岸,是存放VBA程序代碼的地方--分為標(biāo)準(zhǔn)模塊和類模塊
標(biāo)準(zhǔn)模塊:用于存放全局變量公共函數(shù)大的聲明腔彰、函數(shù)、自定義函數(shù)等辖佣,用戶可以在模塊所在的工程中調(diào)用該模塊的全局變量萍桌、函數(shù)等。--標(biāo)準(zhǔn)模塊只能在同一個(gè)工程中使用凌简。
類模塊:用于存放用戶自己創(chuàng)建對象的定義上炎。--=可跨工程使用(但較少使用)
插入-模塊
過程程序:
過程是最小的邏輯單元,其包括一系列用于完成某項(xiàng)任務(wù)或計(jì)算的語句雏搂。
過程程序簡單點(diǎn)來說就是通過代碼完成一個(gè)任務(wù)藕施。可根據(jù)有無返回值分為函數(shù)過程程序和子過程程序凸郑。
過程程序的添加:在模塊中添加裳食;在工作薄中添加;在工作表對象中添加
子程序過程常用語法:
Sub過程名稱()
程序代碼
End sub
#可以將宏看成一個(gè)子過程程序芙沥。
函數(shù)過程程序與子過程程序類似诲祸,只是需要一個(gè)返回值
事件程序:
一種特殊的子過程程序,當(dāng)某種特定事件發(fā)生時(shí)才執(zhí)行的程序而昨。
Sub 對象名稱——事件名稱(自變量)
程序結(jié)構(gòu):
程序代碼
End sub
過程程序和事件程序的區(qū)別:
1.過程程序所有的程序代碼必須手動(dòng)創(chuàng)建救氯,事件程序開始結(jié)束代碼可通過選擇對象和對象的事件自動(dòng)生成
2.過程程序通常通過宏調(diào)用,事件程序在某個(gè)事件被觸發(fā)時(shí)執(zhí)行
3.過程程序常與用戶自定義的對象相關(guān)聯(lián)歌憨,事件程序常與excel本身存在的對象相關(guān)聯(lián)
對象:工作薄着憨、工作表、單元格务嫡、圖表甲抖、窗體、按鈕...都是對象
屬性:
在excel中對象和屬性用.隔開:對象.屬性=屬性值
賦值給變量時(shí):變量=對象.屬性
方法:
方法是指對對象執(zhí)行的某種動(dòng)作心铃,從而完成某件事情或某種動(dòng)作准谚。
對象.方法 自變量