【ca88亚洲城电脑版网】如何调试Excel,Excel工具栏代码

问题:Excel有多少个版本,如何让VBA代码写的应用程序在区别版本间通用?

1.定义一些全局变量

Excel
VBA出错开上下班时间给出的错误音讯极少,须求足够利用各个工具来开始展览调剂。

一.  在ThisWorkbook中

回答:

Dim Obj_Toolbar As CommandBar’代表工具栏的变量
Dim Obj_Menu As CommandBarPopup’代表菜单的变量
Dim Obj_Toolbar_button As CommandBarButton’代表菜单项和按钮的变量

1.编写翻译错误
常见的编写翻译错误有:

1 Private Sub Workbook_Open()
2     '%对应alt键 宏不能加()
3     Application.OnKey "%q", "Test"
4 End Sub

excel的vba本来就是通用的呀,你还想要怎么用

2.编写制定生成工具栏和菜单的子程序

荒唐的源代码格式,比如if前边贫乏then:在编辑器中该行会成为铅灰。

动用open事件触发

回答:

Sub addbutton()’创立工具栏和菜单并设置属性的子程序
_deletebutton’调用删除工具栏和菜单的子程序
Set Obj_Toolbar =
Application.CommandBars.Add(“My_Custom_Bar”)’新建筑工程具栏,“My_Custom_Bar”代表工具栏的称号
Set Obj_Menu = Obj_Toolbar.Controls.Add(Type:=msoControlPopup,
ID:=1)’在工具栏上新建下拉菜单,“ID:=1”代表该工具栏的效益由用户自定义,下同
With Obj_Menu’设置下拉菜单的属性
.Caption = “风格切换”’设置标题
.BeginGroup = True’设置分组
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton, ID:=1)’新建菜单项,下同
With Obj_Toolbar_button’设置菜单项的天性,下同
.Caption = “标准风格”
.BeginGroup = True
.OnAction = “Standard_Style”’设置单击菜单项执行的子程序名称
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton,
ID:=1)’新建别的的菜单项,并设置属性
With Obj_Toolbar_【ca88亚洲城电脑版网】如何调试Excel,Excel工具栏代码。button
.Caption = “不难风格”
.BeginGroup = True
.OnAction = “Simple_Style”
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton, ID:=1)
With Obj_Toolbar_button
.Caption = “绘图和制表风格”
.BeginGroup = True
.OnAction = “Draw_Table_Style”
End With
Set Obj_Toolbar_button =
Obj_Toolbar.Controls.Add(Type:=msoControlButton,
ID:=1)’新建筑工程具栏按钮
With Obj_Toolbar_button’设置按钮的习性
  .Caption = “关于”
  .Style = msoButtonIconAndCaption
  .FaceId = 984
  .OnAction = “Show_Msg”
End With
With Obj_Toolbar’设置工具栏的属性
 .Visible = True’工具栏可视
 .Enabled = True’工具栏可用
 .Position = msoBarTop’工具栏置顶
End With
Set Obj_Menu = Application.CommandBars(“Menu
Bar”).Controls.Add(Type:=msoControlPopup, ID:=1)’在Word
XP的主菜单中新建菜单,“Menu Bar”代表Word XP主菜单的称呼
With Obj_Menu’设置新建菜单的性子
 .Caption = “风格切换”
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton,
ID:=1)’在新建菜单中添加菜单项,下同
With Obj_Toolbar_button’设置新建菜单项的性质,下同
.Caption = “标准风格”
.BeginGroup = True
.OnAction = “Standard_Style”
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton,
ID:=1)’新建别的的菜单项,并设置属性
With Obj_Toolbar_button
.Caption = “简单风格”
.BeginGroup = True
.OnAction = “Simple_Style”
End With
Set Obj_Toolbar_button =
Obj_Menu.Controls.Add(Type:=msoControlButton, ID:=1)
With Obj_Toolbar_button
.Caption = “绘图和制表风格”
.BeginGroup = True
.OnAction = “Draw_Table_Style”
End With
End Sub

荒谬的语法结构,比如if和end
if没有对应上:代码运营前会交到编写翻译错误提醒。

二.  在Sub中

爱惜入微头条号小编 伪专家前言不搭后语 发布的篇章里有那几个上边的牵线 能够过去看望
希望能帮到你

3.编辑删除工具栏和菜单的子程序

种类不包容:函数输入的参数与概念时的参数类型分歧时会出现此类错误。

Sub auto_open()
    Application.OnKey "1", "test.模块1.Test "
End Sub

Sub _deletebutton()’删除工具栏和菜单的子程序
Dim tempbar As CommandBar’定义临工具栏变量
On Error Resume Next’该语句用于忽略错误
Application.CommandBars(“Menu Bar”).Reset’重新设置Word
XP的主菜单,即除去新建的菜系
For Each tempbar In Application.CommandBars’通过“For
Each…Next”语句遍历Word XP全部的工具栏
If tempbar.name = “My_Custom_Bar” Then’如名称和新建的工具栏相同
tempbar.Visible = False’设置为不可视
tempbar._delete’删除该工具栏
End If
Next
End Sub

变量未定义:指使用了从未有过表达的变量类型(当Option Explicit时)

设置快速键为大键盘部分数字1,
宏中test为VBAProject修改的名目+模块名称+宏名

建议:

auto_open好像为一定命名的宏, 使用此称呼的宏内容会自动执行一回

格式规范化,严刻缩进。VBA插件SmartIndent是贰个很好的协理理工科程师具。那样做让源代码更享有可读性,从而更快检测源代码格式和语法结果错误,。

 

勾选上「工具——选项——编写翻译器——需要变量证明」,或然在各类代码模块最前方手工业加上
Option Explicit
。在代码编辑中,很多谬误只是因为手误,这些选项会让编写翻译器强制检查变量表明,从而在编写翻译时便发现错误。

2.运作中失误或然运维结果错误

当程序编写翻译没反常,但运转中失误恐怕运转的结果与想象中不符,就需求用到VBA的调节作用。上边是VBA提供的多少个主要的调剂功用,这个成效能让程序停在少数特定的地点上伺计算机检索查:
F9:设置程序断点,在代码左侧栏点击有一致效果。重新按F9即撤除断点。
F8:单步跟踪,当调用子函数会跟踪到子函数内部
Shift+F8:单步跟踪,但不会跻身子函数内部
Ctrl+Shift+F8:跳出正在跟踪的函数,直接重返上一层函数。
F5:运行程序,直到出现错误、程序结束或程序断点截至
Ctrl+F8:运营程序,直到出现谬误、程序甘休、程序断点或当前光标所在行甘休
debug.print
var:在即刻窗口中展现var的值
debug.assert
var:当var==false时先后自动终止

如上命令也可在菜单和命令栏中赢得。

在调节和测试进程中,可透过上边两种艺术查看各样变量的值,当变量和预期不一样时,也就找到了程序出错的缘故,便能对照修改:

当下窗口(飞快键Ctrl+G):在该窗口里会显得debut.print的结果值,以及每日总计和平运动作代码。在代码前面添加「?」,能够在及时窗口中显得运转结果。

监视窗口:能够将变量以及表明式添加到监视窗口,能够实时查看变量和表明式的值。帮衬将代码窗口里的变量和表明式拖入到见识窗口

本地窗口:本地窗口里能够查阅最近的local变量和global变量的变量值。

编排窗口:将鼠标停在编排窗口的变量上可显示该变量的值。

有一对措施可减少程序不当以及降低调节和测试的难度: