用vb怎么做excel表格
EXCEL函数公式直接操作的是数组,完全可以达到循环的目的,可以理解为是封装了的循环函数,下面举两个例子来说明:
问题1: 条件求和 公式SUMIF,求序号大于3的数据的和。
a. 用函数公式就非常简单在C2单元格输入=SUMIF(A2:A6,">3",B2:B6)就能行到结果42
b. 如果用VBA就复杂多了,代码如下:
set sh = ActivateSheetsum = 0 # 保存求和的结果For i = 2 to 6 If sh.cells(i,1)>3 Then sum = sum + sh.cells(i,2) End ifNext i
问题2:条件查找公式VLOOKUP,依次把B列的名字在A列中查找,如果找到就标记为TRUE,如果没有找到就标记为FALSE.
a. 函数就非常简单了,只需要在C2输入公式=IF(ISERROR(VLOOKUP(B2,A:A,1,FALSE)),FALSE,TRUE),然后下拉下C4
b. VBA代码就比较复杂了,如下:
set sh = ActivateSheetFor i=2 to 4 isexist = FALSE For j=2 to 4 If sh.cells(i,2) = sh.cells(j,1) Then isexist = TRUE End If Next j sh.cells(i,3) = isexistNext i
绛旓細1銆侀鍏堬紝鎴戜滑闇瑕佺偣鍑绘枃浠惰彍鍗曟爮鎸夐挳銆2銆佺劧鍚庯紝鎴戜滑鐐瑰嚮鐢熸垚EXE鎸夐挳銆3銆佹帴涓嬫潵锛屾垜浠偣鍑讳繚瀛樿矾寰銆4銆佺劧鍚庯紝鎴戜滑杈撳叆鎴戜滑鎯宠淇濆瓨鐨勬枃浠跺悕銆5銆佹渶鍚庯紝鎴戜滑鐐瑰嚮纭畾鎸夐挳銆6銆佺劧鍚庯紝鎴戜滑渚垮彲浠ョ湅鍒帮紝鍦ㄦ闈㈢敓鎴愪簡Excel琛ㄦ牸浜嗐
绛旓細a. 鐢ㄥ嚱鏁板叕寮忓氨闈炲父绠鍗曞湪C2鍗曞厓鏍艰緭鍏=SUMIF(A2:A6,">3",B2:B6)灏辫兘琛屽埌缁撴灉42 b. 濡傛灉鐢╒BA灏卞鏉傚浜嗭紝浠g爜濡備笅锛歴et sh = ActivateSheetsum = 0 # 淇濆瓨姹傚拰鐨勭粨鏋淔or i = 2 to 6 If sh.cells(i,1)>3 Then sum = sum + sh.cells(i,2) End ifNext i 闂2锛...
绛旓細1銆侀鍏堬紝鎴戜滑闇瑕佺偣鍑绘枃浠惰彍鍗曟爮鎸夐挳銆2銆佺劧鍚庯紝鎴戜滑鐐瑰嚮鐢熸垚EXE鎸夐挳銆3銆佹帴涓嬫潵锛屾垜浠偣鍑讳繚瀛樿矾寰銆4銆佺劧鍚庯紝鎴戜滑杈撳叆鎴戜滑鎯宠淇濆瓨鐨勬枃浠跺悕銆5銆佹渶鍚庯紝鎴戜滑鐐瑰嚮纭畾鎸夐挳銆6銆佺劧鍚庯紝鎴戜滑渚垮彲浠ョ湅鍒帮紝鍦ㄦ闈㈢敓鎴愪簡Excel琛ㄦ牸浜嗐
绛旓細瑕佹眰1:鍦╰ext1涓啓鍏ユ暟鎹渪x鈥,鐒跺悗鐐瑰嚮command1,灏卞彲浠ユ妸"xx"鏄剧ず鍦╡xcel琛ㄦ牸鐨凙1鍗曞厓鏍奸噷,姣斿excel琛ㄦ牸鐨勮矾寰勫湪"d:\11.xls"銆傚綍鍏ユ暟鎹悗,瑕佽嚜鍔ㄤ繚瀛樸傝姹2:鍐嶆鎵撳紑vb,褰曞叆鏁版嵁,姣斿鍦╰... 灞曞紑 460426434 | 娴忚4826 娆 |涓炬姤 鎴戞湁鏇村ソ鐨勭瓟妗2016-01-29 鏈浣崇瓟妗 VB鍙皢浣跨敤Object 鏁版嵁绫诲瀷瀵笶XCE...
绛旓細1銆佹墦寮excel杞欢锛屽厛鐐瑰嚮鈥滃紑鍙戝伐鍏封濓紝鍐嶇偣鍑烩滄煡鐪嬩唬鐮佲濓紝鎵撳紑VBA绐楀彛銆2銆佸湪鏂版墦寮鐨勭獥浣撶殑浠g爜缂栬緫鍖哄鍒剁矘璐翠互涓嬩唬鐮侊紝骞剁偣鍑荤豢鑹插皬涓夎鎸夐挳銆備唬鐮侊細Sub 鍒涘缓鏂版枃浠()Dim excelApp, excelWB As Object Dim savePath, saveName As String Set excelApp = CreateObject("Excel.Application")Set ...
绛旓細Excel涓殑VB璇█鍙仛VBA锛屽湪VBE涓浣跨敤浠g爜鏂板缓鍗冲彲銆侲xcel鐗堟湰鍙傝冿細2010 婕旂ず锛氭柊寤轰竴涓〃鍚嶄负test鐨宸ヤ綔琛銆1銆丄LT+F11锛岃繘鍏BE绐楀彛銆2銆佸彸鍑诲伐浣滆〃鏍囩-鎻掑叆-妯″潡銆3銆佽緭鍏ヤ唬鐮侊細Sub test()Worksheets.Add(after:=Sheets(Sheets.Count)).Name = "test"End Sub 4銆佹寜涓婩5鎵ц锛屾煡鐪嬪伐浣滆〃锛屾柊寤...
绛旓細涓銆 VB璇诲啓EXCEL琛锛歏B鏈韩鎻愯嚜鍔ㄥ寲鍔熻兘鍙互璇诲啓EXCEL琛紝鍏舵柟娉曞涓嬶細1銆佸湪宸ョ▼涓紩鐢∕icrosoft Excel绫诲瀷搴擄細浠"宸ョ▼"鑿滃崟涓夋嫨"寮曠敤"鏍忥紱閫夋嫨Microsoft Excel 9.0 Object Library锛圗XCEL2000锛夛紝鐒跺悗閫夋嫨"纭畾"銆傝〃绀哄湪宸ョ▼涓寮曠敤EXCEL绫诲瀷搴撱2銆佸湪閫氱敤瀵硅薄鐨勫0鏄庤繃绋嬩腑瀹氫箟EXCEL瀵硅薄锛欴im xl...
绛旓細excel鐢靛瓙琛ㄦ牸涓浣曠敤vb 璇彞鎻掑叆琛屾垨鍗曞厓鏍 Selection.Insert Shift:=xlDown 鎻掑叆琛岋紝 Selection.Insert Shift:=xlToRight 鎻掑叆鍗曞厓鏍硷紝鍚戝彸绉 Selection.Insert Shift:=xlDown 鎻掑叆鍗曞厓鏍硷紝鍚戜笅绉 鍙﹀鍛婅瘔浣犱釜绠鍗曠殑鏂规硶锛屽氨鏄厛寮鍚綍鍒舵柊宸ㄩ泦锛岀劧鍚庤繘琛岋紝浣犺鐨勬搷浣滐紝鐒跺悗寮鍚法闆嗘瑙嗕竴涓嬪師濮...
绛旓細浣 Microsoft.Jet.OLEDB.4.0 鏂瑰紡鏀寔!adoConnection.Execute "insert into [sheet1$](濮撳悕) values(3)"adoRecordset.AddNew Array("濮撳悕", "鎬у埆", "骞撮緞", "鍦板潃"), Array(1, 2, 3, 4)浠ヤ笂灏辨槸浠婂ぉ鍒嗕韩鐨“VB閲囩敤ADO鏂瑰紡鎿嶄綔EXCEL琛ㄦ牸鐨勬搷浣滄楠”锛屽笇鏈涘ぇ瀹舵湁鎵鏀惰幏銆
绛旓細"c:\1.xls") '鎵撳紑c:\1.xlsset xlswb=xlsapp.workbooks("1.xls") '璁剧疆xlswb鍙橀噺 寮曠敤1.xls 宸ヤ綔绨縮et xlsworksheet=xlswb.worksheets(1) '璁剧疆xlsworksheet鍙橀噺寮曠敤1.xls 宸ヤ綔绨跨殑绗竴涓宸ヤ綔琛msgbox xlsworksheet.cells(1,1) '鏄剧ずa1鍗曞厓鏍肩殑鍐呭xlsapp.quit() '鍏抽棴excel ...