vba读书笔记

303 阅读3分钟

offce安装视频教程

Office Tool 載點:

KMS 地址列表:裡面盡量找成功率高的使用

excel宏开发前配置

vba视频教程

VBA番外篇01:xlam文件创建与安装

Dim强制变量

Sub开始
rate =Cells(86For 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