with语句的使用 Sub test() Sheet2.Range('a1') = 6 Sheet2.Range('a2') = 16 Sheet2.Range('a3') = 26 '等效 With Sheets .Range('a1') = 6 .Range('a2') = 16 .Range('a3') = 26 End With End Sub 设置单元格格式 Sub test() Range('a1').Font.Size = 18 #字体大小为18号 End Sub 改单元格背景色 Sub gys() Cells.Interior.Pattern = xlNone #先清空所有单元格颜色 Selection.EntireRow.Interior.Color = 65535 End Sub 什么是事件?发生了什么事 自动的去执行这个事 自动运行宏 事件是在每个表里的worksheet :三个常用事件介绍 1)事件selectionchange 2)事件change 代码解释 Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False #将事件关闭 Range('l1:q10000').ClearContents Range('a1:f232').AutoFilter Field:=4, Criteria1:=Range('i2') Range('a1:f232').Copy Range('l1') Range('a1:f232').AutoFilter Application.EnableEvents = True 将事件开启 End Sub 3)事件activate 自动刷新举例说明 代码 Private Sub Worksheet_Activate()
ActiveWorkbook.RefreshAll
End Sub
workbook 中的事件 beforesave 自动备份重要文件 excel中=now()”得到当前时间 然后用 “text('','yyyymmddhhmmss')”更改格式 在vba中是 Sub ss() Range('a1') = Format(Now(), 'yyyymmddhh') End Sub 当前工作簿 可以是 activeworkbook 也可以是 thisworkbok。用下面的方法去保存备份有个问题 就是 执行后 当前的文件编程了1.xlsx 不是你要操作的文件了 但是用thisworkbook.savecopyas “d:\data\1.xlsx” 就能避免这样的问题 保存后 还是要操作的文件 Sub ss() ThisWorkbook.SaveAs 'd:\data\1.xlsx' End Sub 数据备份
|
|
来自: Excel实用知识 > 《VBA与EXCEL》