1.禁止连续触发事件
'EXCEL中有多个单元格有change事件,只有当前单元格发生改变时触发当前单元格对应的处理
Private Sub Worksheet_Change(ByVal Target As Range)
'禁止连续触发事件
Application.EnableEvents = False
'======主要处理略
'允许连续触发事件
Application.EnableEvents = True
End Sub
2.获取当前单元格的位置:Target.address
3.获取当前单元格的值:Target.Value
4.弹出密码输入框
Sub 表示按钮_Click()
'预设密码
finalPwd = "123456"
'请输入密码
inputPwd = InputBox("请输入密码!", "info", Default)
'密码验证
If finalPwd = inputPwd Then
MsgBox ("成功!")
Else
MsgBox ("密码输入错误!")
End If
End Sub
5.删除可编辑范围
Sub UnProtectSheet()
ActiveSheet.Unprotect
'删除全部可编辑范围
For i = 1 To ActiveSheet.Protection.AllowEditRanges.Count
ActiveSheet.Protection.AllowEditRanges(i).Delete
Next
End Sub
6.名称管理器,更改单元格名称
Range("A1").Name = "汉字"
效果:
7.给单元格设公式
Function setFormula(ByVal row As Integer, ByVal column1 As String) As Boolean
'
' 给单元格设公式
'
Dim formula As String
'如果有A1~A{0}列不为空,计算第{1}列de第1到{0}行的值
formula = "=SUMPRODUCT(($A$1:$A{0}="""")*({1}$1:{1}{0}*1))"
formula = Replace(formula, "{0}", CStr(row - 1))
formula = Replace(formula, "{1}", column1)
Worksheets("sheet1").Range(column1 & row).formula = formula
setFormula = True
End Function
效果:({0}=4,{1}=B)
8.四舍五入:
Application.Round(123.5, 1)
结果:124
9.给VBA代码设置保护密码:
①.打开Excel,按下Alt+F11;
②.选择代码工作表,点击右键,选择“VBAProject属性”;
③.选择“保护”选项卡;
④.勾选“查看时锁定工程”,输入两次密码;
⑤.就为VBA代码设置了密码保护。
10.给单元格设百分比公式
A1内容:0.101
Range(“A1”).NumberFormatLocal = “0.0%”
A1的表示结果:10.1%
//待更新