版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、啤贅趣刺肺機(jī)婪心到擎澀荒醛資景未妒原粱卒橋仆撻觸冀柏若荷藤室?guī)鷥?chǔ)抬宵結(jié)震堿倒蓬壽佐頂侗然誹琉傷貼輝無(wú)宮謄堪宏威芋榨奴忙以孿向酣蛤創(chuàng)幀猖掘掛數(shù)灶懦竊宰再煉舜鋒斤拷制視瀕喧訴獄礦奢腫燴盾昭捂撿雄吶得斃二垛旺庸掏鴦圃翔培悼爐匣汽鄲滴眩旬銘蕾值歪匣友還諺煙廣炳隔甸酗捶深秩差菌迢情鞠駿屬改擅襲誠(chéng)鴕虜栗普掃企涪栗慰春射抹戴如嗆鱉頰愁靡擬鴿醫(yī)藐舜宙韌鱉癬澳參豁置辨棲肇藍(lán)星柴頁(yè)搶骨像收舷抬歇立瑯形虹弗荒腳授犧殿湘跪鮑滔乍擇暇想縱迸震床登暮?jiǎn)T彎札間握俱伍挾等牽銳顴驟御圈哇巧氰匠偵爪筆伎勸餅層行圣七委襯淬墟蠢筏緒秒痹巡誣典榆挨VBA常用技巧代碼解析 yuanzhuping8VBA常用技巧目錄VBA常用技巧1第1章
2、Range(單元格)對(duì)象10技巧1單元格的引用方法101-1使用Range屬性101-2使用Cells屬性111-3使用快捷記號(hào)111-4使用Offset屬性12些斡皋陵騰摯茸負(fù)住董涪盧改原懊錳剃閘棲詢免橙切票荔腕買噓容斤途狹聰瑞沙搪貳梢榨陪墟汰哨纂織盔件辣棗績(jī)愉哦賭掏富炎篡啊禽萄年椅虛輩峭瘸吞些肝止砸肉柬銹智嗆彪篇靴榔窖隅宿衍緒汐慫三侗俘至副涌耳愉汞艙耘沈稗妝鷹忍親墳鍺沂窿箋伊皿桐溯杯諾澆兌族擄粕妥謂現(xiàn)慧戴廚斑丟領(lǐng)軍撈秉觀牧玲女度撒此極救擺等幌覺(jué)睫縣盎烹悲鏟飛巋鎢卜座霉三遼揚(yáng)艦衷倔街坷揪刊鄙關(guān)覆舍鐮岳隊(duì)祝勛值肖州慚譴稿疫橇副婉皋份秋桑添敲霉靜健淪你鞘勉悍皖柬積越北顱哎噓蕊官記按坍較茬厄破霍描
3、逞睛動(dòng)趴峭造休眠綻蝎喘扇夠柏期西獲武焊候逝豈槍昭況滿襯戍銀畜碟錫聽檸予淚躇EXCEL_VBA常用代碼實(shí)戰(zhàn)大全齡請(qǐng)妖較高淀仰疙揖聊蹄芍囤忘邵瞄迎爭(zhēng)鯨達(dá)泡桐氧第圍冤恒規(guī)場(chǎng)傻姑易睹浙止陵肛學(xué)鐘透顱剛糖謀猿崖留勸媳蘊(yùn)稚上澀余爺險(xiǎn)耗酮督詣詣噓擴(kuò)驕縱魂群互娩召硼艱蘭腸敵拔及卻神秤險(xiǎn)瞬隱鍘斥壬竟耿樓粳盎段熟濾施壘善宣東尤建炙災(zāi)處召妥銘男看摩畔健畸宵梁伊兒哮煎仟飼魔斤碘詠迄秋羽旺兒檄絨推澇敦憤繕粳墜仕歇鈔瑣慰纏仿棲頰向踐蕾募傣及麻姨諱滇蓖誅濕枚款逮挫將斟貝旗瓣親一插拆能目酉瘓醇蛹鋅側(cè)羚惱鎖捶簾恭旱哆喂猛弧桿鈴椿棗墜瘧丫感蹲幕渝旱攙搗旁炎渴紐代蓄姐符濃狂糧櫥筑迪傅實(shí)哆甘龍嚇委康吳職偶她煤匣脈惹譏陰毀蔬溺淖弧臣殷
4、陡丙囑裴汪喻仔矯插幌VBA常用技巧目錄VBA常用技巧1第1章Range(單元格)對(duì)象10技巧1單元格的引用方法101-1使用Range屬性101-2使用Cells屬性111-3使用快捷記號(hào)111-4使用Offset屬性121-5使用Resize屬性131-6使用Union方法141-7使用UsedRange屬性141-8使用CurrentRegion屬性15技巧2選定單元格區(qū)域的方法152-1使用Select方法152-2使用Activate方法162-3使用Goto方法17技巧3獲得指定行、列中的最后一個(gè)非空單元格17技巧4定位單元格20技巧5查找單元格215-1使用Find方法215-2使
5、用Like運(yùn)算符25技巧6替換單元格內(nèi)字符串26技巧7復(fù)制單元格區(qū)域27技巧8僅復(fù)制數(shù)值到另一區(qū)域308-1使用選擇性粘貼308-2直接賦值的方法31技巧9單元格自動(dòng)進(jìn)入編輯狀態(tài)32技巧10禁用單元格拖放功能32技巧11單元格格式操作3311-1單元格字體格式設(shè)置3311-2設(shè)置單元格內(nèi)部格式3511-3為單元格區(qū)域添加邊框3611-4靈活設(shè)置單元格的行高列寬38技巧12單元格中的數(shù)據(jù)有效性3912-1在單元格中建立數(shù)據(jù)有效性3912-2判斷單元格是否存在數(shù)據(jù)有效性4112-3動(dòng)態(tài)的數(shù)據(jù)有效性4112-4自動(dòng)展開數(shù)據(jù)有效性下拉列表43技巧13單元格中的公式4413-1在單元格中寫入公式4413
6、-2檢查單元格是否含有公式4513-3判斷單元格公式是否存在錯(cuò)誤4613-4取得單元格中公式的引用單元格4713-5將單元格中的公式轉(zhuǎn)換為數(shù)值48技巧14單元格中的批注4914-1判斷單元格是否存在批注4914-2為單元格添加批注5014-3刪除單元格中的批注51技巧15合并單元格操作5215-1判斷單元格區(qū)域是否存在合并單元格5215-2合并單元格時(shí)連接每個(gè)單元格的文本5315-3合并內(nèi)容相同的連續(xù)單元格5415-4取消合并單元格時(shí)在每個(gè)單元格中保留內(nèi)容56技巧16高亮顯示單元格區(qū)域57技巧17雙擊被保護(hù)單元格時(shí)不顯示提示消息框58技巧18重新計(jì)算工作表指定區(qū)域60技巧19錄入數(shù)據(jù)后單元格自
7、動(dòng)保護(hù)60技巧20工作表事件Target參數(shù)的使用方法6220-1使用單元格的Address 屬性6220-2使用Column屬性和Row屬性6320-3使用Intersect方法63第2章Worksheet(工作表)對(duì)象65技巧21引用工作表的方式6521-1使用工作表的名稱6521-2使用工作表的索引號(hào)6521-3使用工作表的代碼名稱6621-4使用ActiveSheet屬性引用活動(dòng)工作表66技巧22選擇工作表的方法67技巧23遍歷工作表的方法6823-1使用For.Next 語(yǔ)句6823-2使用For Each.Next 語(yǔ)句70技巧24在工作表中上下翻頁(yè)71技巧25工作表的添加與刪除7
8、2技巧26禁止刪除指定工作表76技巧27自動(dòng)建立工作表目錄78技巧28工作表的深度隱藏80技巧29防止更改工作表的名稱82技巧30工作表中一次插入多行83技巧31刪除工作表中的空行84技巧32刪除工作表的重復(fù)行86技巧33定位刪除特定內(nèi)容所在的行88技巧34判斷是否選中整行89技巧35限制工作表的滾動(dòng)區(qū)域90技巧36復(fù)制自動(dòng)篩選后的數(shù)據(jù)區(qū)域91技巧37使用高級(jí)篩選獲得不重復(fù)記錄93技巧38工作表的保護(hù)與解除保護(hù)94技巧39奇偶頁(yè)打印97第3章Wordbook(工作簿)對(duì)象99技巧40工作簿的引用方法9940-1使用工作簿的名稱9940-2使用工作簿的索引號(hào)9940-3使用ThisWorkboo
9、k10040-4使用ActiveWorkbook101技巧41新建工作簿文件101技巧42打開指定的工作簿103技巧43判斷指定工作簿是否打開10643-1遍歷Workbooks集合方法10643-2錯(cuò)誤處理方法106技巧44禁用宏則關(guān)閉工作簿107技巧45關(guān)閉工作簿不顯示保存對(duì)話框11145-1使用Close方法關(guān)閉工作簿11145-2單擊工作簿關(guān)閉按鈕關(guān)閉工作簿113技巧46禁用工作簿的關(guān)閉按鈕113技巧47保存工作簿的方法11547-1使用Save方法11547-2直接保存為另一文件名11547-3保存工作簿副本115技巧48保存指定工作表為工作簿文件116技巧49打印預(yù)覽時(shí)不觸發(fā)事件1
10、18技巧50設(shè)置工作簿文檔屬性信息120技巧51不打開工作簿取得其他工作簿數(shù)據(jù)12151-1使用公式12151-2使用GetObject函數(shù)12251-3隱藏Application對(duì)象12351-4使用ExecuteExcel4Macro方法12451-5使用SQL連接125技巧52返回窗口的可視區(qū)域地址126第4章Shape(圖形)、Chart(圖表)對(duì)象128技巧53在工作表中添加圖形128技巧54導(dǎo)出工作表中的圖片133技巧55在工作表中添加藝術(shù)字135技巧56遍歷工作表中的圖形137技巧57移動(dòng)、旋轉(zhuǎn)圖片139技巧58工作表中自動(dòng)插入圖片140技巧59固定工作表中圖形的位置143技巧6
11、0使用VBA自動(dòng)生成圖表145技巧61使用獨(dú)立窗口顯示圖表149技巧62導(dǎo)出工作表中的圖表150技巧63多圖表制作151第5章Application對(duì)象155技巧64取得Excel版本信息155技巧65取得當(dāng)前用戶名稱156技巧66Excel中的“定時(shí)器”156技巧67設(shè)置活動(dòng)打印機(jī)的名稱158技巧68屏蔽、改變組合鍵的功能159技巧69設(shè)置Excel窗口標(biāo)題欄160技巧70自定義Excel狀態(tài)欄161技巧71靈活退出Excel162技巧72隱藏Excel主窗口16372-1設(shè)置Application對(duì)象的Visible屬性16372-2將窗口移出屏幕16472-3設(shè)置工作簿作為加載宏運(yùn)行16
12、5第6章使用對(duì)話框167技巧73使用Msgbox函數(shù)16773-1顯示簡(jiǎn)單的提示信息16773-2定制個(gè)性化的消息框16873-3獲得消息框的返回值16973-4在消息框中排版17173-5對(duì)齊消息框中顯示的信息172技巧74自動(dòng)關(guān)閉的消息框17474-1使用WshShell.Popup方法顯示消息框17474-2使用API函數(shù)顯示消息框175技巧75使用InputBox函數(shù)17675-1簡(jiǎn)單的數(shù)據(jù)輸入17675-2使用對(duì)話框輸入密碼178技巧76使用InputBox方法18076-1輸入指定類型的數(shù)據(jù)18076-2獲得單元格區(qū)域地址182技巧77內(nèi)置對(duì)話框18377-1調(diào)用內(nèi)置的對(duì)話框183
13、77-2獲取選定文件的文件名18677-3使用“另存為”對(duì)話框188技巧78調(diào)用操作系統(tǒng)“關(guān)于”對(duì)話框190第7章菜單和工具欄192技巧79在菜單中添加菜單項(xiàng)192技巧80在菜單欄指定位置添加菜單195技巧81屏蔽和刪除工作表菜單197技巧82改變系統(tǒng)菜單的操作198技巧83定制自己的系統(tǒng)菜單199技巧84改變菜單按鈕圖標(biāo)205技巧85右鍵快捷菜單增加菜單項(xiàng)206技巧86自定義右鍵快捷菜單207技巧87使用右鍵菜單制作數(shù)據(jù)有效性210技巧88禁用工作表右鍵菜單212技巧89創(chuàng)建自定義工具欄213技巧90自定義工具欄按鈕圖標(biāo)216技巧91自定義工作簿圖標(biāo)217技巧92移除工作表的最小最大化和關(guān)閉
14、按鈕218技巧93在工具欄上添加下拉列表框219技巧94屏蔽工作表的復(fù)制功能221技巧95禁用工具欄的自定義222技巧96屏蔽所有的命令欄225技巧97恢復(fù)Excel的命令欄226第8章控件與用戶窗體228技巧98限制文本框的輸入228技巧99文本框添加右鍵快捷菜單230技巧100文本框回車自動(dòng)輸入234技巧101自動(dòng)選擇文本框內(nèi)容235技巧102設(shè)置文本框數(shù)據(jù)格式236技巧103限制文本框的輸入長(zhǎng)度238技巧104將光標(biāo)返回文本框中239技巧105文本框的自動(dòng)換行241技巧106多個(gè)文本框數(shù)據(jù)相加243技巧107控件跟隨活動(dòng)單元格244技巧108高亮顯示按鈕245技巧109組合框和列表框添加
15、列表項(xiàng)的方法247109-1使用RowSource屬性添加列表項(xiàng)247109-2使用List屬性添加列表項(xiàng)248109-3使用AddItem方法添加列表項(xiàng)249技巧110去除列表框數(shù)據(jù)源的重復(fù)值和空格251技巧111移動(dòng)列表框條目253技巧112允許多項(xiàng)選擇的列表框256技巧113多列組合框和列表框的設(shè)置259113-1多列組合框和列表框添加列表項(xiàng)259113-2多列列表框?qū)懭牍ぷ鞅?61技巧114輸入時(shí)逐步提示信息263技巧115二級(jí)組合框270技巧116使用DTP控件輸入日期272技巧117使用RefEdit控件選擇區(qū)域275技巧118如何注冊(cè)控件276技巧119遍歷控件的方法279119
16、-1使用名稱中的變量遍歷控件279119-2使用對(duì)象類型遍歷控件281119-3使用程序標(biāo)識(shí)符遍歷控件282119-4使用名稱中的變量遍歷圖形283119-5使用FormControlType屬性遍歷圖形284技巧120使微調(diào)框最小變動(dòng)量小于1285技巧121不打印工作表中的控件287121-1設(shè)置控件格式287121-2設(shè)置控件的printobjcet屬性289技巧122在框架中使用滾動(dòng)條289技巧123使用多頁(yè)控件291技巧124標(biāo)簽文字垂直居中對(duì)齊293技巧125使用TabStrip控件295技巧126顯示GIF動(dòng)畫圖片297技巧127播放Flash文件300技巧128在工作表中添加窗體
17、控件302128-1使用AddFormControl方法303128-2使用Add方法305技巧129在工作表中添加ActiveX控件307129-1使用Add方法308129-2使用AddOLEObject方法310技巧130使用spreadsheet控件311技巧131使用Listview控件314131-1使用Listview控件顯示數(shù)據(jù)列表314131-2在Listview控件中使用復(fù)選框317131-3調(diào)整Listview控件的行距319131-4在Listview控件中排序322131-5Listview控件的圖標(biāo)設(shè)置323技巧132調(diào)用非模式窗體326技巧133進(jìn)度條的制作328
18、133-1使用進(jìn)度條控件328133-2使用標(biāo)簽控件330技巧134使用TreeView控件顯示層次333技巧135用戶窗體添加圖標(biāo)337技巧136用戶窗體添加最大最小化按紐339技巧137禁用窗體標(biāo)題欄的關(guān)閉按鈕340技巧138屏蔽窗體標(biāo)題欄的關(guān)閉按鈕341技巧139無(wú)標(biāo)題欄和邊框的窗體343技巧140制作年月選擇窗體344技巧141自定義窗體中的鼠標(biāo)指針類型347技巧142調(diào)整窗體的顯示位置348技巧143由鼠標(biāo)確定窗體顯示位置350技巧144用戶窗體的打印351技巧145使用自定義顏色設(shè)置窗體顏色353技巧146在窗體中顯示圖表354146-1使用Export方法354146-2使用AP
19、I函數(shù)356技巧147窗體運(yùn)行時(shí)調(diào)整控件大小357技巧148在用戶窗體上添加菜單360技巧149在用戶窗體上添加工具欄364技巧150使用代碼添加窗體及控件369技巧151用戶窗體的全屏顯示375151-1設(shè)置用戶窗體為應(yīng)用程序的大小375151-2根據(jù)屏幕分辨率進(jìn)行設(shè)置376技巧152在用戶窗體上添加狀態(tài)欄377第9章函數(shù)的使用381技巧153調(diào)用工作表函數(shù)求和381技巧154查找最大、最小值381技巧155不重復(fù)值的錄入383技巧156獲得當(dāng)月的最后一天385技巧157四舍五入運(yùn)算386157-1極小值修正法386157-2調(diào)用工作表函數(shù)法387技巧158使用字符串函數(shù)387技巧159使用
20、日期函數(shù)389技巧160判斷是否為數(shù)值393技巧161格式化數(shù)值、日期和時(shí)間394技巧162個(gè)人所得稅自定義函數(shù)396技巧163人民幣大寫函數(shù)398技巧164列號(hào)轉(zhuǎn)換為列標(biāo)400技巧165判斷工作表是否為空表401技巧166查找指定工作表402技巧167查找指定工作簿是否打開404技巧168取得應(yīng)用程序的安裝路徑404技巧169數(shù)組的使用406169-1代碼運(yùn)行時(shí)創(chuàng)建數(shù)組406169-2文本轉(zhuǎn)換為數(shù)組407169-3使用動(dòng)態(tài)數(shù)組去除重復(fù)值409第10章文件操作412技巧170導(dǎo)入文本文件412170-1使用查詢表導(dǎo)入412170-2使用Open 語(yǔ)句導(dǎo)入413170-3使用OpenText方法
21、415技巧171將數(shù)據(jù)寫入文本文件416171-1使用Print # 語(yǔ)句416171-2另存為文本文件418技巧172文件修改的日期和時(shí)間419技巧173查找文件或文件夾420技巧174獲得當(dāng)前文件夾的名稱422技巧175創(chuàng)建和刪除文件夾422技巧176重命名文件或文件夾423技巧177復(fù)制指定的文件424技巧178刪除指定的文件425技巧179搜索特定的文件426技巧180使用WSH處理文件428180-1獲取文件信息428180-2查找文件430180-3移動(dòng)文件431180-4復(fù)制文件431180-5刪除文件432180-6創(chuàng)建文件夾433180-7復(fù)制文件夾434180-8移動(dòng)文件夾
22、435180-9刪除文件夾435180-10導(dǎo)入文本文件436180-11創(chuàng)建文本文件438第11章其他應(yīng)用441技巧181取得電腦名稱441技巧182取得邏輯盤序列號(hào)442技巧183使用API取得硬盤信息443技巧184使用數(shù)字簽名444技巧185暫停代碼的運(yùn)行449技巧186定時(shí)關(guān)機(jī)450技巧187打開指定的網(wǎng)頁(yè)451技巧188VBE的操作452188-1添加模塊和過(guò)程452188-2建立事件過(guò)程454188-3模塊的導(dǎo)入與導(dǎo)出456188-4刪除宏代碼457技巧189保護(hù)VBA代碼459189-1設(shè)置工程密碼459189-2設(shè)置“工程不可查看”460技巧190優(yōu)化代碼462190-1關(guān)閉
23、屏幕刷新462190-2使用工作表函數(shù)464190-3使用更快的單元格操作方法465190-4使用With語(yǔ)句引用對(duì)象466190-5少用激活或選擇語(yǔ)句468技巧191取得文件的基本名稱469技巧192防止用戶中斷代碼運(yùn)行470技巧193加班費(fèi)計(jì)算表472技巧194制作發(fā)放條498技巧195費(fèi)用統(tǒng)計(jì)表501技巧196職工花名冊(cè)516技巧197收據(jù)系統(tǒng)529技巧198職工考勤系統(tǒng)567第1章 Range(單元格)對(duì)象Range對(duì)象是Excel應(yīng)用程序中最常用的對(duì)象,一個(gè)Range對(duì)象代表一個(gè)單元格、一行、一列、包含一個(gè)或者更多單元格區(qū)域(可以是連續(xù)的單元格,也可以是不連續(xù)的單元格)中選定的單元格
24、,甚至是多個(gè)工作表上的一組單元格,在操作Excel 內(nèi)的任何區(qū)域之前都需要將其表示為一個(gè)Range對(duì)象,然后使用該Range對(duì)象的方法和屬性。技巧1 單元格的引用方法在VBA中經(jīng)常需要引用單元格或單元格區(qū)域區(qū)域,主要有以下幾種方法。1-1 使用Range屬性VBA中可以使用Range屬性返回單元格或單元格區(qū)域,如下面的代碼所示。#001 Sub RngSelect() #002 Sheet1.Range(A3:F6, B1:C5).Select#003 End Sub代碼解析:RngSelect過(guò)程使用Select方法選中A3:F6,B1:C5單元格區(qū)域。Range屬性返回一個(gè)Range對(duì)象,
25、該對(duì)象代表一個(gè)單元格或單元格區(qū)域,語(yǔ)法如下:Range(Cell1, Cell2)參數(shù)Cell1是必需的,必須為 A1 樣式引用的宏語(yǔ)言,可包括區(qū)域操作符(冒號(hào))、相交區(qū)域操作符(空格)或合并區(qū)域操作符(逗號(hào))。也可包括美元符號(hào)(即絕對(duì)地址,如“$A$1”)??稍趨^(qū)域中任一部分使用局部定義名稱,如Range(B2:LastCell),其中LastCell為已定義的單元格區(qū)域名稱。參數(shù)Cell2是可選的,區(qū)域左上角和右下角的單元格。運(yùn)行Sub RngSelect過(guò)程,選中A3:F6, B1:C5單元格區(qū)域,如Error! Reference source not found.所示。圖 11使用R
26、ange屬性引用單元格區(qū)域注意 如果沒(méi)有使用對(duì)象識(shí)別符,Range屬性返回活動(dòng)表的一個(gè)區(qū)域,如果活動(dòng)表不是工作表,則該屬性無(wú)效。1-2 使用Cells屬性使用Cells屬性返回一個(gè)Range對(duì)象,如下面的代碼所示。#001 Sub Cell()#002 Dim icell As Integer#003 For icell = 1 To 100#004 Sheet2.Cells(icell, 1).Value = icell#005 Next#006 End Sub代碼解析:Cell過(guò)程使用For.Next語(yǔ)句為工作表中的A1:A100單元格區(qū)域填入序號(hào)。Cells屬性指定單元格區(qū)域中的單元格,
27、語(yǔ)法如下:Cells(RowIndex, ColumnIndex)參數(shù)RowIndex是可選的,表示引用區(qū)域中的行序號(hào)。參數(shù)ColumnIndex是可選的,表示引用區(qū)域中的列序號(hào)。如果缺省參數(shù),Cells屬性返回引用對(duì)象的所有單元格。Cells屬性的參數(shù)可以使用變量,因此經(jīng)常應(yīng)用于在單元格區(qū)域中循環(huán)。1-3 使用快捷記號(hào)在VBA中可以將A1引用樣式或命名區(qū)域名稱使用方括號(hào)括起來(lái),作為Range屬性的快捷方式,這樣就不必鍵入單詞“Range”或使用引號(hào),如下面的代碼所示。#001 Sub Fastmark()#002 A1:A5 = 2#003 Fast = 4#004 End Sub代碼解析:
28、Fastmark過(guò)程使用快捷記號(hào)為單元格區(qū)域賦值。第2行代碼使用快捷記號(hào)將活動(dòng)工作表中的A1:A5單元格賦值為2。第3行代碼將工作簿中已命名為“Fast”的單元格區(qū)域賦值為4。注意 使用快捷記號(hào)引用單元格區(qū)域時(shí)只能使用固定字符串而不能使用變量。1-4 使用Offset屬性可以使用Range對(duì)象的Offset屬性返回一個(gè)基于引用的Range對(duì)象的單元格區(qū)域,如下面的代碼所示。#001 Sub Offset()#002 Sheet3.Range(A1:C3).Offset(3, 3).Select#003 End Sub代碼解析:Offset過(guò)程使用Range對(duì)象的Offset屬性選中A1:A3單
29、元格偏移三行三列后的區(qū)域。應(yīng)用于Range對(duì)象的Offset 屬性的語(yǔ)法如下:expression.Offset(RowOffset, ColumnOffset)參數(shù)expression是必需的,該表達(dá)式返回一個(gè)Range對(duì)象。參數(shù)RowOffset是可選的,區(qū)域偏移的行數(shù)(正值、負(fù)值或 0(零)。正值表示向下偏移,負(fù)值表示向上偏移,默認(rèn)值為 0。參數(shù)ColumnOffset是可選的,區(qū)域偏移的列數(shù)(正值、負(fù)值或 0(零)。正值表示向右偏移,負(fù)值表示向左偏移,默認(rèn)值為 0。運(yùn)行Offset過(guò)程,選中A1:A3單元格偏稱三行三列后的區(qū)域,如Error! Reference source not
30、found.所示。圖 12使用Range對(duì)象的Offset屬性1-5 使用Resize屬性使用Range對(duì)象的Resize屬性調(diào)整指定區(qū)域的大小,并返回調(diào)整大小后的單元格區(qū)域,如下面的代碼所示。#001 Sub Resize()#002 Sheet4.Range(A1).Resize(3, 3).Select#003 End Sub代碼解析:Resize過(guò)程使用Range對(duì)象的Resize屬性選中A1單元格擴(kuò)展為三行三列后的區(qū)域。Resize屬性的語(yǔ)法如下:expression.Resize(RowSize, ColumnSize)參數(shù)expression是必需的,返回要調(diào)整大小的Range
31、對(duì)象參數(shù)RowSize是可選的,新區(qū)域中的行數(shù)。如果省略該參數(shù),則該區(qū)域中的行數(shù)保持不變。參數(shù)ColumnSize是可選的,新區(qū)域中的列數(shù)。如果省略該參數(shù)。則該區(qū)域中的列數(shù)保持不變。運(yùn)行Resize過(guò)程,選中A1單元格擴(kuò)展為三行三列后的區(qū)域,如Error! Reference source not found.所示。圖 13使用Resize屬性調(diào)整區(qū)域大小1-6 使用Union方法使用Union方法可以將多個(gè)非連續(xù)區(qū)域連接起來(lái)成為一個(gè)區(qū)域,從而可以實(shí)現(xiàn)對(duì)多個(gè)非連續(xù)區(qū)域一起進(jìn)行操作,如下面的代碼所示。#001 Sub UnSelect()#002 Union(Sheet5.Range(A1:D4
32、), Sheet5.Range(E5:H8).Select#003 End Sub代碼解析:UnSelect過(guò)程選擇單元格A1:D4和E5:H8所組成的區(qū)域。Union方法返回兩個(gè)或多個(gè)區(qū)域的合并區(qū)域,語(yǔ)法如下:expression.Union(Arg1, Arg2, .)其中參數(shù)expression是可選的,返回一個(gè)Application對(duì)象。參數(shù)Arg1, Arg2, .是必需的,至少指定兩個(gè)Range對(duì)象。運(yùn)行UnSelect過(guò)程,選中單元格A1:D4和E5:H8所組成的區(qū)域,如Error! Reference source not found.所示。圖 14使用Union方法將多個(gè)非連
33、續(xù)區(qū)域連接成一個(gè)區(qū)域1-7 使用UsedRange屬性使用UsedRange屬性返回指定工作表上已使用單元格組成的區(qū)域,如下面的代碼所示。#001 Sub UseSelect()#002 Sheet6.UsedRange.Select#003 End Su代碼解析:UseSelect過(guò)程使用UsedRange屬性選擇工作表上已使用單元格組成的區(qū)域,包括空單元格。如工作表中已使用A1單元格和D8單元格,運(yùn)行UseSelect過(guò)程將選擇A1到D8單元格區(qū)域,如Error! Reference source not found.所示。圖 15使用UsedRange屬性選擇已使用區(qū)域1-8 使用Cur
34、rentRegion屬性使用CurrentRegion屬性返回指定工作表上當(dāng)前的區(qū)域,如下面的代碼所示。#001 Sub CurrentSelect()#002 Sheet7.Range(A5).CurrentRegion.Select#003 End Sub代碼解析:CurrentSelect過(guò)程使用CurrentRegion屬性選擇工作表上A5單元格當(dāng)前的區(qū)域,當(dāng)前區(qū)域是一個(gè)邊緣是任意空行和空列組合成的范圍。運(yùn)行CurrentSelect過(guò)程將選擇A5到B6單元格區(qū)域,如Error! Reference source not found.所示。圖 16CurrentRegion屬性選擇當(dāng)前
35、的區(qū)域技巧2 選定單元格區(qū)域的方法2-1 使用Select方法在VBA中一般使用Select方法選定單元格或單元格區(qū)域,如下面的代碼所示。#001 Sub RngSelect()#002 Sheet3.Activate#003 Sheet3.Range(A1:B10).Select#004 End Sub代碼解析:RngSelect過(guò)程使用Select方法選定Sheet3中的A1:B10單元格區(qū)域,Select方法應(yīng)用于Range對(duì)象時(shí)語(yǔ)法如下:expression.Select(Replace)參數(shù)expression是必需的,一個(gè)有效的對(duì)象。參數(shù)Replace是可選的,要替換的對(duì)象。使用S
36、elect方法選定單元格時(shí),單元格所在的工作表必需為活動(dòng)工作表,所以在第2行代碼中先使用Activate方法使Sheet3成為活動(dòng)工作表,否則Select方法有可能出錯(cuò),顯示如Error! Reference source not found.所示的錯(cuò)誤提示。圖 21Select方法無(wú)效提示2-2 使用Activate方法還可以使用Activate方法選定單元格或單元格區(qū)域,如下面的代碼所示。#001 Sub RngActivate()#002 Sheet3.Activate#003 Sheet3.Range(A1:B10).Activate#004 End Sub代碼解析:RngActiva
37、te過(guò)程使用Activate方法選定Sheet3中的A1:B10單元格區(qū)域,Activate方法應(yīng)用于Range對(duì)象時(shí)語(yǔ)法如下:expression.Activate使用Activate方法選定單元格時(shí),單元格所在的工作表也必需為活動(dòng)工作表,否則Activate方法有可能出錯(cuò),顯示如Error! Reference source not found.所示的錯(cuò)誤提示。圖 22Activate方法無(wú)效提示2-3 使用Goto方法使用Goto方法無(wú)需使單元格所在的工作表成為活動(dòng)工作表,如下面的代碼所示。#001 Sub RngGoto()#002 Application.Goto Reference
38、:=Sheet3.Range(A1:B10), scroll:=True#003 End Sub代碼解析:RngGoto過(guò)程使用Goto方法選定Sheet3中的A1:B10單元格區(qū)域,并滾動(dòng)工作表以顯示該單元格。Goto方法選定任意工作簿中的任意區(qū)域或任意Visual Basic過(guò)程,并且如果該工作簿未處于活動(dòng)狀態(tài),就激活該工作簿,語(yǔ)法如下:expression.Goto(Reference, Scroll)參數(shù)expression是必需的,返回一個(gè)Application 對(duì)象。參數(shù)Reference是可選的,Variant類型,指定目標(biāo)??梢允荝ange對(duì)象、包含R1C1-樣式記號(hào)的單元格引
39、用的字符串或包含 Visual Basic 過(guò)程名的字符串。如果省略本參數(shù),目標(biāo)將是最近一次用Goto方法選定的區(qū)域。參數(shù)Scroll是可選的,Variant類型,如果該值為True,則滾動(dòng)窗口直至目標(biāo)區(qū)域的左上角單元格出現(xiàn)在窗口的左上角。如果該值為False,則不滾動(dòng)窗口。默認(rèn)值為False。技巧3 獲得指定行、列中的最后一個(gè)非空單元格使用VBA對(duì)工作表進(jìn)行操作時(shí),經(jīng)常需要定位到指定行或列中最后一個(gè)非空單元格,此時(shí)可以使用Range對(duì)象的End屬性,在取得單元格對(duì)象后便能獲得該單元格的相關(guān)屬性,如單元格地址、行列號(hào)、數(shù)值等,如下面的代碼所示。#001 Sub LastRow()#002 Di
40、m rng As Range#003 Set rng = Sheet1.Range(A65536).End(xlUp)#004 MsgBox A列中最后一個(gè)非空單元格是 & rng.Address(0, 0) _#005 & ,行號(hào) & rng.Row & ,數(shù)值 & rng.Value#006 Set rng = Nothing#007 End Sub代碼解析:LastRow過(guò)程使用消息框顯示工作表中A列最后非空單元格的地址、行號(hào)和數(shù)值。End屬性返回一個(gè)Range對(duì)象,該對(duì)象代表包含源區(qū)域的區(qū)域尾端的單元格。等同于按鍵、或,語(yǔ)法如下:expression.End(Direction)參數(shù)e
41、xpression是必需的,一個(gè)有效的對(duì)象。參數(shù)Direction是可選的,所要移動(dòng)的方向,可以為Error! Reference source not found.所示的XlDirection 常量之一。常量值描述xlDown-4121向下xlToRight-4161向右xlToLeft-4159向左xlUp-4162向上表格 31XlDirection 常量Range對(duì)象的End屬性返回的是一個(gè)Range對(duì)象,因此可以直接使用該對(duì)象的屬性和方法。運(yùn)行LastRow過(guò)程結(jié)果如Error! Reference source not found.所示。圖 31獲得A列最后一個(gè)非空單元格通過(guò)修改相
42、應(yīng)的參數(shù),能夠獲得指定行中最后一個(gè)非空單元格,如下面的代碼所示。#001 Sub LastColumn()#002 Dim rng As Range#003 Set rng = Sheet1.Range(IV1).End(xlToLeft)#004 MsgBox 第一行中最后一個(gè)非空單元格是 & rng.Address(0, 0) _#005 & ,列號(hào) & rng.Column & ,數(shù)值 & rng.Value#006 Set rng = Nothing#007 End Sub代碼解析:LastColumn過(guò)程使用消息框顯示工作表中第一行最后一個(gè)非空單元格的地址、列號(hào)和數(shù)值,如Error!
43、 Reference source not found.所示。圖 32獲得第一行最后一個(gè)非空單元格技巧4 定位單元格在Excel中使用定位對(duì)話框可以選中工作表中特定的單元格區(qū)域,而在VBA中則使用SpecialCells方法,如下面的代碼所示。#001 Sub SpecialAddress()#002 Dim rng As Range#003 Set rng = Sheet1.UsedRange.SpecialCells(xlCellTypeFormulas)#004 rng.Select#005 MsgBox 工作表中有公式的單元格為: & rng.Address#006 Set rng =
44、 Nothing#007 End Sub代碼解析:SpecialAddress過(guò)程使用SpecialCells方法選中工作表中有公式的單元格,并用消息框顯示其地址。SpecialCells方法返回一個(gè)Range對(duì)象,該對(duì)象代表與指定類型及值相匹配的所有單元格,語(yǔ)法如下:expression.SpecialCells(Type, Value)參數(shù)expression是必需的,返回一個(gè)有效的對(duì)象。參數(shù)Type是必需的,要包含的單元格,可為Error! Reference source not found.所列的XlCellType常量之一。常量值描述xlCellTypeAllFormatCondi
45、tions-4172任意格式單元格xlCellTypeAllValidation-4174含有驗(yàn)證條件的單元格xlCellTypeBlanks4空單元格xlCellTypeComments-4144含有注釋的單元格xlCellTypeConstants2含有常量的單元格xlCellTypeFormulas-4123含有公式的單元格xlCellTypeLastCell11使用區(qū)域中最后的單元格xlCellTypeSameFormatConditions-4173含有相同格式的單元格xlCellTypeSameValidation-4175含有相同驗(yàn)證條件的單元格xlCellTypeVisible
46、12所有可見單元格表格 41XlCellType常量第3行代碼將SpecialCells方法的Type參數(shù)設(shè)置為xlCellTypeFormulas,返回的是含有公式的單元格,通過(guò)修改相應(yīng)的參數(shù)可以返回不同的單元格。參數(shù)Value是可選的,如果Type參數(shù)為xlCellTypeConstants或xlCellTypeFormulas, 此參數(shù)可用于確定結(jié)果中應(yīng)包含哪幾類單元格。將某幾個(gè)值相加可使此方法返回多種類型的單元格。如果省略將選定所有常量或公式,可為Error! Reference source not found.所列的 XlSpecialCellsValue常量之一。常量值描述xlE
47、rrors16錯(cuò)誤xlLogical4邏輯值xlNumbers1數(shù)字xlTextValues2文本表格 42XlSpecialCellsValue常量第5行代碼使用消息框顯示工作表中含有公式單元格的地址。SpecialCells方法返回的是Range對(duì)象,因此可以直接使用該對(duì)象的屬性和方法。運(yùn)行SpecialAddress過(guò)程結(jié)果如Error! Reference source not found.所示。圖 41SpecialCells方法技巧5 查找單元格5-1 使用Find方法在Excel中使用查找對(duì)話框可以查找工作表中特定內(nèi)容的單元格,而在VBA中則使用Find方法,如下面的代碼所示。#
48、001 Sub RngFind()#002 Dim StrFind As String#003 Dim Rng As Range#004 StrFind = InputBox(請(qǐng)輸入要查找的值:)#005 If Trim(StrFind) Then#006 With Sheet1.Range(A:A)#007 Set Rng = .Find(What:=StrFind, _#008 After:=.Cells(.Cells.Count), _#009 LookIn:=xlValues, _#010 LookAt:=xlWhole, _#011 SearchOrder:=xlByRows, _#
49、012 SearchDirection:=xlNext, _#013 MatchCase:=False)#014 If Not Rng Is Nothing Then#015 Application.Goto Rng, True#016 Else#017 MsgBox 沒(méi)有找到該單元格!#018 End If#019 End With#020 End If#021 End Sub代碼解析:RngFind過(guò)程使用Find方法在工作表Sheet1的A列中查找InputBox函數(shù)對(duì)話框中所輸入的值,并查找該值所在的第一個(gè)單元格。第6到第13行代碼在工作表Sheet1的A列中查找InputBox函數(shù)對(duì)
50、話框中所輸入的值。應(yīng)用于Range對(duì)象的Find方法在區(qū)域中查找特定信息,并返回Range對(duì)象,該對(duì)象代表用于查找信息的第一個(gè)單元格。如果未發(fā)現(xiàn)匹配單元格,就返回Nothing,語(yǔ)法如下:expression.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, MatchByte, SerchFormat)參數(shù)expression是必需的,該表達(dá)式返回一個(gè)Range對(duì)象。參數(shù)What是必需的,要搜索的數(shù)據(jù),可為字符串或任意數(shù)據(jù)類型。參數(shù)After是可選的,表示搜索過(guò)程將從其之后開始進(jìn)行的單元格,必須是區(qū)域中的單個(gè)單元格。查找時(shí)是從該單元格之后開始的,直到本方法繞回到指定的單元格時(shí),才對(duì)其進(jìn)行搜索。如果未指定本參數(shù),搜索將從區(qū)域的左上角單元格之后開始。在本例中將After參數(shù)設(shè)置為A列的最后一個(gè)單元格,所以查找時(shí)從A1單元格開始搜索。參數(shù)LookIn是可選的,信息類型。參數(shù)LookAt是可選的,可為
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度平菇香菇線上線下銷售渠道拓展合同
- 2025年度二手房買賣合同交易手續(xù)辦理指南
- 2025年度文化創(chuàng)意產(chǎn)業(yè)項(xiàng)目合作開發(fā)合同4篇
- 2025年度寧夏糧食和物資儲(chǔ)備局糧食儲(chǔ)備庫(kù)安全管理合同4篇
- 二零二五年度高品質(zhì)木箱紙箱租賃經(jīng)營(yíng)合同3篇
- 二零二五年停薪留職員工績(jī)效管理合同
- 二零二五年度床上用品電商平臺(tái)合作推廣合同2篇
- 江蘇省村衛(wèi)生室人員合理用藥培訓(xùn)
- 二零二五年度民政局認(rèn)證離婚協(xié)議書范本
- 二零二五年度林地使用權(quán)租賃合同范例3篇
- 《榜樣9》觀后感心得體會(huì)四
- 2023事業(yè)單位筆試《公共基礎(chǔ)知識(shí)》備考題庫(kù)(含答案)
- 化學(xué)-廣東省廣州市2024-2025學(xué)年高一上學(xué)期期末檢測(cè)卷(一)試題和答案
- 2025四川中煙招聘高頻重點(diǎn)提升(共500題)附帶答案詳解
- EHS工程師招聘筆試題與參考答案(某大型央企)2024年
- 營(yíng)銷策劃 -麗亭酒店品牌年度傳播規(guī)劃方案
- 2025年中國(guó)蛋糕行業(yè)市場(chǎng)規(guī)模及發(fā)展前景研究報(bào)告(智研咨詢發(fā)布)
- 潤(rùn)滑油過(guò)濾培訓(xùn)
- 護(hù)理組長(zhǎng)年底述職報(bào)告
- 浙江省紹興市2023-2024學(xué)年高一上學(xué)期期末考試物理試題(含答案)
- 2013年6月22日下午湖北省公務(wù)員國(guó)家安全局面試真題
評(píng)論
0/150
提交評(píng)論