主要内容:
Workbooks工作簿对象
For Each 循环
第一块内容:For Each循环
1.
Sub test1()
Dim ge As Range'把变量ge定义为Range(rng)类型,单元格变量/区域变量
For Each ge In Range("A1:A10")'在单元格区域A1:A10范围内,循环查找单元格
ge = 1
Next
End Sub
'输出的结果为在单元格A1:A10中都填上了1
Sub sc()
Dim biao As Worksheet
Application.DisplayAlerts = False’使得不谈出提醒是否确认删除的对话框,如果没有这个代码,那么则会每循环一次,弹出一次
For Each biao In Sheets
If biao.Name <> "绝不能删" Then'意思是如果表名不等于“绝不能删”就把表删除
biao.Delete
End If
Next
Application.DisplayAlerts = False
End Sub
第二块内容:Workbooks工作簿对象
1.
'在一个文件里对另一个文件进行操作的方法
Sub wenjian()
Application.ScreenUpdating = False'表示屏幕更新,必须与下面的屏幕更新为True成对出现
Application.DisplayAlerts = False'表示不弹出警告,必须与下面的弹出警告为True成对出现
Workbooks.Open filename:="D:\data\1.xlsx" '可以通过这个参数打开这个文件夹下的名称为1的Excel文件,冒号等于(:=)意思就是等于的意思
ActiveWorkbook.Sheets(1).Range("a1") = "到此一游" 'ActiveWorkbook意思是打开的那个表,在这个表中的单元格A1中写入到此一游
ActiveWorkbook.Save'然后将此表保存
ActiveWorkbook.Close'然后用close函数关闭该表
Application.DisplayAlerts = True
Application.ScreenUpdating = True
End Sub
'将一个Excel中的不同Sheet表分别拷出来分为多个文件,批量拆分表格
Sub chaifen()
Dim sht As Worksheet
For Each sht In Sheets'表示每张表都循环一次
sht.copy'把表复制
ActiveWorkbook.SaveAs filename:="D:\data\"sht.Name" & ".xlsx '对刚复制的表进行操作,将其保存在D盘data文件夹下,命名为sht的表名
ActiveWorkbook.Close
End Sub
需要理解并记住写法的:
Workbooks
For Each A in Worksheets
Dim she As Worksheet
Dim rng As Range
需要理解的概念:
Workbooks.Open Filename:=“D:\data\1.xlsx”
.Active .Close .Add .Save(保存文件) .Save As(将文件保存到哪个位置)