VBA编写笔记:常用的对象和方法

2023-02-17 13:45:41 浏览数 (1)

常用对象和方法

Application对象

1. Application.ScreenUpdating 属性

如果启用屏幕更新,则该属性值为 True。Boolean 类型,可读写。 关闭屏幕更新可加快宏的执行速度。这样将看不到宏的执行过程,但宏的执行速度加快了。 当宏结束运行后,请记住将 ScreenUpdating 属性设置回 True。

2. Application.FileDialog 属性

返回一个 FileDialog 对象,该对象表示文件对话框的实例

TypeName 函数

返回一个 String,提供有关变量的信息。

TypeName(varname),必要的 varname 参数是一个 Variant,它包含用户定义类型变量之外的任何变量。

Application.Volatile 方法

用于将用户自定义函数标记为易失性函数,无论何时在工作表的任意单元格中进行计算时,易失性函数都必须重新进行计算。非易失性函数只在输入变量改变时才重新计算,若不用于计算工作表单元格的用户自定义函数中,则此方法无效。

记录

  1.   GetObject获取的表格对象是多应用模式。workbooks.open则是单应用,多应用存在跨应用调用问题。GetObject相当于存在了两个Application,而workbooks.open还是一个。
  2.   unprotect解除工作表保护,protect 保护工作表,同样适用于工作簿。
  3.   range对象的offset属性能整体偏移选择其它范围,并返回它的range对象。

VB中数组维度的问题

  1. Ubound(array,dimenssion),获取指定数组的指定维度的维数上限。
  2. Lbound(array,dimenssion),获取指定数组的指定维度的维数下限。

Application.DisplayAlerts函数

Application.DisplayAlerts = False,禁用OFFICE出错时的错误提示。

WorksheetFunction 对象

用作可从 Visual Basic 中调用的 Microsoft Excel 工作表函数的容器。

代码语言:javascript复制
Set myRange = Worksheets("Sheet1").Range("A1:C10")
answer = Application.WorksheetFunction.Min(myRange)
MsgBox answer

VBA中常用的COM对象

  1. scripting.dictionary,字典对象。
  2.  wscript.shell,激活指定窗口,发送按键指令,运行程序,弹出提醒框等等。
  3. scripting.filesystemobject,文件系统的对象。
  4. shell.application,操作窗口排列等等
  5. Internet.application ,IE浏览器
  6. VBScript.RegExp,正则对象
  7. MSXML2.XmlHttp,用于HTTP获取数据(GET、POST)
  8. WinHttp.WinHttpRequest.5.1,用于HTTP获取数据(GET、POST)

踩坑

  1. 模块中的变量需要用public标志,才能在表格对象中使用。

Application.CutCopyMode

Application.CutCopyMode = False,清除复制和剪切的状态

Application.onkey 和 sendKey

发送键盘按键信息,以及指定按键触发的时候执行指定的操作。

Application.onTime/onRepeat/onUndo/onKey

到达指定时间、撤销、重做、按下指定按键时触发执行指定的操作,可以递归调用自身,实现类似Timer的功能。

Excel 控制word的时候,要注意

  1. 录制的宏里的常量是word环境下的,在Excel里要适配一下。

表格插入控件

可插入的控件分为表单控件和activex控件。表单控件只能通过shapes对象去获取,activex对象可以直接操作。

代码语言:javascript复制
Set a = ActiveDocument.GoTo(What:=wdGoToPage, Which:=wdGoToAbsolute, Count:=2)
a.Delete

VB笔记

1.CommonDialog

CommonDialog1.ShowOpen打开对话框

参考:https://www.jb51.net/softjc/684049.html

0 人点赞