随着手机里面功能越来越丰富,让我们使用起来越来越方便了,给我们的生活带来了极大的便利。怎样使用VBA禁用与隐藏自定义菜单项?

方法/步骤
-
1
首先在开发工具中打开VBA编辑器
-
2
在单元格区域当中输入一些内容作为例子
-
3
在VBA编辑器中插入模块
-
4
在模块当中输入如下代码,然后运行
Dim msg As String, cell As Range, i As Integer, temp '声明公用变量
Dim str As String, hanzi As Long, ZiMu As Long, ShuZi As Long, j As Long
Sub计算数值()
If TypeName(Selection) <> "Range" Then MsgBox "请选择单元格!", 64, "
友情提示": Exit Sub '如果未选择单元格则退出
For Each cell In Selection '遍历选区的单元格
'*****以下七句计算选区的数字个数,因为选区无数字时计算平均值会出错,故用IF跳
过此错误,对平均值赋值为0
If VBA.IsNumeric(cell.Value) And cell <> "" Then i=i+1
Next
If i=0 Then
msg="平均值:0"
Else
msg="平均值:" & WorksheetFunction.Average(Selection)
End If
msg=msg & Chr(10) & "计 数:" & WorksheetFunction.Count(Selection)
msg=msg & Chr(10) & "计数值:" & WorksheetFunction.CountA(Selection)
msg=msg & Chr(10) & "最大值:" & WorksheetFunction.Max(Selection)
msg=msg & Chr(10) & "最小值:" & WorksheetFunction.Min(Selection)
msg=msg & Chr(10) & "求 和:" & WorksheetFunction.Sum(Selection)
msg=msg & Chr(10) & "单元格:" & Selection.Count
MsgBox "您的选区:" & Chr(10) & msg, 64, "友情提示"
End Sub
Sub计算字符()
For Each cell In Selection
j=j+Len(cell.Value) '计算字符总长度
For i=1 To Len(cell)
str=Mid(cell.Value, i, 1) '逐一取出字符
If str Like "[一-龥]"=True Then '汉字
hanzi=hanzi+1 '汉字累加
ElseIf str Like "[a-zA-Z]"=True Then '字母
ZiMu=ZiMu+1 '字母累加
ElseIf str Like "[0-9]"=True Then '数字
ShuZi=ShuZi+1 '数字累加
End If
Next
Next
MsgBox "所选单元格区域中共有字数" & j & "个。" & Chr(10) & "汉字:" & hanzi
& "个" & _
Chr(10) & "字母:" & ZiMu & "个" & Chr(10) & "数字:" & ShuZi & "个"
& Chr(10) _
& "特殊字符及空格:" & j-ZiMu-ShuZi-hanzi & "个。", 64, "字符统计"
End Sub
Sub控制显示()
Application.CommandBars(1).Controls("统计").Controls(1).Enabled=
(TypeName(Selection)="Range")
Application.CommandBars(1).Controls("统计").Controls(2).Enabled=
(TypeName(Selection)="Range")
End Sub
-
5
双击左边工程资源管理器中的“ThisWorkbook”,在右边的工作簿代码窗口输入以下代码,用于调用两个程序以及控制按钮的显示状态
END
文章评论