Dim强制变量
Sub开始
rate =Cells(8,6)
For i=11 to 20 Step 1 循环( 或Step -1 )
Cells(i,6)=Cells(i,6)/rate 循环体
Next i 循环结束
If score>=60 Then
Cells(8,6)="及格"
Else
Cells(8,6)="不及格"
End If
End Sub结束
字符串拼接 “3" & "1" 与或非 And Or Not not优先级高于and优先级高于or
Rows(i & ":" & i)/ Rows(6 : 6)从第六行开头到第六行结尾
Range(c1:g4)从c1到g4的矩形范围
删除操作最好用倒序循环。因为删除后下面的列自动上移
在vba中while循环比 for循环更频繁使用
在统计不知条数的列表时用do while loop循环
Rem 注释语句
Application 代表正运行的excel系统本身
WorkBook代表一个打开的excel文件工作簿
WorkSheet代表一张工作表
Range代表一个或者若干个单元格组成的内容区域
Set w1=WorkSheet (3)为代表对象的变量赋值时,必须用set关键字
w1.Cells(5,3)=100
遍历所有工作表
For i=1 To WorkSheet.Count
Set w1=WorkSheet(i)
w1.Cells(5,3)=100
Next i
Dim w1 As WorkSheet
Set w1=WorkSheet.Add 添加一张新的工作表
Set wall=WorkSheet(“总分榜”)
WorkSheet对象的name属性,可以用来获取和修改工作表名
比较字段
If LCase(Trim(w.cells(_,_)))=LCase(Trim(name)) Then ...
弹出框 MsgBox a a是变量
Len(s),
Trim(s),
Replace(s,a,b),
LCase(s)// 英文字母转小写,
UCase(s)//大写,
Left(s,a)//从s左边取出a个字符,构成新的字符串返回,
Right(。。)
Mid(s,i,a)//从s的第i个字符开始去.截取a个字符返回
InStr(s,a)//在s中寻找a。找到则返回a出现的位置第几个字符,没有则返回0
Sub ...()
Dim wb As WorkBook
Set wb=WorkBooks.Open("D:\季度总结\4月.xlsx")
wb.WorkSheets(1).Cells(1,1)="HELLO!"
wb.close
End Sub
Sub ...()
Dim wb As WorkBook
Set wb=WorkBooks.Add
wb.WorkSheets(1).Cells(1,1)="HELLO!"
wb.SaveAs "D:\测试.xlsx"
End Sub
Sub ...()
Dim r As Range
Set r=Range("C2:G5")
// Set r=Range("C2:G5","F2:G5")
//Set r=Range(Cells(2,3),Cells(5,7))
r.Value=5 // r=5简写
r.ClearContents //清空数据保留格式
Range.Font.Color
Range.Font.Size
Range.Font.Italic//斜体
Range.Font.Bold//粗体
End Sub
Sub 宏8()
Dim r As Range
Set r = Range("A1")
r.Font.Name = "Arial"
r.Font.Size = 10
r.Interior.Color = RGB(255, 255, 0)
r.ClearFormats //清除格式保留内容
r.Clear //内容格式都清除
r.Merge //合并单元格为一个,如果形状特殊无法合并
r.UnMerge //合并后拆分
//缩写
With r.Font.Size=15
.Color=RGB(255, 255, 0)
.Bold=True
End With
End Sub
当前正在操作的簿或表
Application.ActiveWorkbook //活动工作簿
Application.ActiveSheet //活动工作表
Application.WorksheetFunction.公式名称 //在vba代码中直接调用Excel表格公式
Application.DisplayAlerts//是否希纳是Excel警告
For Each w In Worksheets
//讲当前工作簿中的所有工作表遍历处理
Next w
添加功能键,自动抓取sheet名字,然后新建工作表,以目录形式呈现,所有表名为超链接形式
一键清除选中单元格里的空格
Sub Clear_Space()
Dim r As Range
For Each r In ActiveSheet.UsedRange.Cells
r = Replace(r, " ", "")
Next r
End Sub
一键统一字体格式
Sub Unite_Format()
Dim r As Range
Set r = Range("A1")
r.Font.Name = "Arial"
r.Font.Size = 10
End Sub