【转载】VBA–早期和后期绑定声明-金宇
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


【转载】VBA–早期和后期绑定声明

发表时间:2023/3/14 9:58:32 评论(0) 浏览(3046)  评论 | 加入收藏 | 复制
   
摘 要:VBA早期和后期绑定声明
正 文:

我决定提供几个从早期绑定到后期绑定的示例,反之亦然,并为早期绑定提供必要的VBA参考库…
这些应该是了解哪些早期绑定声明需要哪些参考库的很好的起点,同时也有助于任何想要向任一方向转换的人。
我希望这对你们中的一些人有所帮助!
以下是迄今为止提供的示例:

Microsoft Access XX.X Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft Access XX.X Object Library
(msacc.olb)
EXAMPLE Dim oAccess As Access.Application


Set oAccess = New Access.Application

Dim oAccess As Object


Set oAccess = CreateObject(“Access.Application”)

 

Microsoft ActiveX Data Object X.X Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft ActiveX Data Object X.X Library
(msadoXX.dll)
EXAMPLE
CONNECTION
Dim oADODBConnection As ADODB.Connection


Set oADODBConnection = New ADODB.Connection

Dim oADODBConnection As Object


Set oADODBConnection = CreateObject(“ADODB.Connection”)

EXAMPLE
STREAM
Dim oADODBStream As ADODB.Stream


Set oADODBStream = New ADODB.Stream

Dim oADODBStream As Object


Set oADODBStream = CreateObject(“ADODB.Stream”)

 

Microsoft ADO Ext. X.X for DDL and Security Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft ADO Ext. X.X for DDL and Security Object Library
(msadox.dll)
EXAMPLE
CATALOG
Dim oCat As ADOX.Catalog


Set oCat = New ADOX.Catalog

Dim oCat As Object


Set oCat = CreateObject(“ADOX.Catalog”)

 

Microsoft DAO 3.6 Object Library

This is a special case as there can be 2 distinct Libraries used here depending on the targetted database!

EARLY BINDING LATE BINDING
REFERENCE Microsoft DAO X.X Object Library (older mdb)
(daoXXX.dll)
or
Microsoft Office XX.X Access database engine Object Library (newer accdb & mdb)
(acedao.dll ???)
EXAMPLE Dim oDAO As DAO.DBEngine


Set oDAO = New DAO.DBEngine

Dim oDAO As Object


On Error Resume Next
Set oDAO = CreateObject(“DAO.DBEngine.120”)
If oDAO Is Nothing Then
Set oDAO = CreateObject(“DAO.DBEngine.36”)
If oDAO Is Nothing Then
Set oDAO = CreateObject(“DAO.DBEngine.35”)
End If
End If

On Error Goto 0
If oDAO Is Nothing Then Exit Sub ‘Function

 

Microsoft Excel XX.X Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft Excel XX.X Object Library
(excel.exe)
EXAMPLE Dim oExcel As Excel.Application


Set oExcel = New Excel.Application

Dim oExcel As Object


Set oExcel = CreateObject(“Excel.Application”)

 

Microsoft Internet Controls

EARLY BINDING LATE BINDING
REFERENCE Microsoft Internet Controls
(ieframe.dll)
EXAMPLE
INTERNET EXPLORER
Dim oIE As SHDocVw.InternetExplorer


Set oIE = New SHDocVw.InternetExplorer

Dim oIE As Object


Set oIE = CreateObject(“InternetExplorer.Application”)

 

Microsoft HTML Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft HTML Object Library
(mshtml.tlb)
EXAMPLE Dim oHTMLDoc As MSHTML.HTMLDocument


Set oHTMLDoc = New MSHTML.HTMLDocument

Dim oHTMLDoc As Object


Set oHTMLDoc = CreateObject(“HTMLFile”)

 

Microsoft PowerPoint XX.X Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft PowerPoint XX.X Object Library
(msppt.olb)
EXAMPLE Dim oPowerPoint As PowerPoint.Application


Set oPowerPoint = New PowerPoint.Application

Dim oPowerPoint As Object


Set oPowerPoint = CreateObject(“PowerPoint.Application”)

 

Microsoft Scripting Runtime

EARLY BINDING LATE BINDING
REFERENCE Microsoft Scripting Runtime
(scrrun.dll)
EXAMPLE
DICTIONARY
Dim oDictionary As Scripting.Dictionary


Set oDictionary = New Scripting.Dictionary

Dim oDictionary As Object


Set oDictionary = CreateObject(“Scripting.Dictionary”)

EXAMPLE
FSO
Dim oFSO As Scripting.FileSystemObject


Set oFSO = New Scripting.FileSystemObject

Dim oFSO As Object


Set oFSO = CreateObject(“Scripting.FileSystemObject”)

 

Microsoft Speech Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft Speech Object Library
(sapi.dll)
EXAMPLE Dim oSpVoice As SpeechLib.SpVoice


Set oSpVoice = New SpeechLib.SpVoice

Dim oSpVoice As Object


Set oSpVoice = CreateObject(“SAPI.SpVoice”)

 

Microsoft Windows Image Acquisition Library vX.X

EARLY BINDING LATE BINDING
REFERENCE Microsoft Windows Image Acquisition Library vX.X
(wiaaut.dll)
EXAMPLE
IMAGEFILE
Dim oImageFile                As WIA.ImageFile


Set oImageFile = New WIA.ImageFile

Dim oImageFile               As Object


Set oImageFile = CreateObject(“WIA.ImageFile”)

EXAMPLE
IMAGEPROCESS
Dim oImageProcess As WIA.ImageProcess.


Set oImageProcess = New WIA.ImageProcess

Dim oImageProcess As Object


Set oImageProcess = CreateObject(“WIA.ImageProcess “)

 

Microsoft Windows Installer Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft Windows Installer Object Library
(msi.dll)
EXAMPLE Dim oMSI As WindowsInstaller.installer


Set oMSI = CreateObject(“WindowsInstaller.Installer”)

Dim oMSI As Object


Set oMSI = CreateObject(“WindowsInstaller.Installer”)

 

Microsoft Word XX.X Object Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft Word XX.X Object Library
(msword.olb)
EXAMPLE Dim oWord As Word.Application


Set oWord = New Word.Application

Dim oWord As Object


Set oWord = CreateObject(“Word.Application”)

 

Microsoft XML

EARLY BINDING LATE BINDING
REFERENCE Microsoft XML, vX.X
(msxml6.dll)
EXAMPLE Dim oHttp As MSXML2.XMLHTTP60


Set oHttp = New MSXML2.XMLHTTP60

Dim oHttp As Object


Set oHttp = CreateObject(“MSXML2.XMLHTTP.6.0”)

 

Microsoft VBScript Regular Expressions

EARLY BINDING LATE BINDING
REFERENCE Microsoft VBScript Regular Expressions X.X
(vbscript.dll)
EXAMPLE Dim oregEx As VBScript_RegExp_55.RegExp


Set oregEx = New VBScript_RegExp_55.RegExp

Dim oregEx As Object


Set oregEx = CreateObject(“VBScript.RegExp”)

 

Microsoft WMI Scripting VX.X Library

EARLY BINDING LATE BINDING
REFERENCE Microsoft WMI Scripting VX.X Library
(wbemdisp.tlb)
EXAMPLE Dim oWMI As WbemScripting.SWbemServices


Set oWMI = GetObject(“winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2”)

Dim oWMI As Object


Set oWMI = GetObject(“winmgmts:{impersonationLevel=impersonate}!\\.\root\cimv2”)

Note: There are different namespace that can be used ‘\root\cimv2’.
 

Microsoft Script Control 1.0

EARLY BINDING LATE BINDING
REFERENCE Microsoft Script Control 1.0
(msscript.ocx)
EXAMPLE Dim oScriptControl As MSScriptControl.ScriptControl


Set oScriptControl = New MSScriptControl.ScriptControl

Dim oScriptControl As Object


Set oScriptControl = CreateObject(“MSScriptControl.ScriptControl”)

Note: Does not work in 64-bit! Refer to: https://github.com/tablacus/TablacusScriptControl
 

Windows Script Host Object Model

EARLY BINDING LATE BINDING
REFERENCE Windows Script Host Object Model
(wshom.ocx)
EXAMPLE
WSCRIPT.SHELL
Dim oWshShell As IWshRuntimeLibrary.WshShell


Set oWshShell = New IWshRuntimeLibrary.WshShell

Dim oWshShell As Object


Set oWshShell = CreateObject(“WScript.Shell”)

EXAMPLE
WSCRIPT.NETWORK
Dim oWshNetwork As IWshRuntimeLibrary.WshNetwork


Set oWshNetwork = New IWshRuntimeLibrary.WshNetwork

Dim oWshNetwork As Object


Set oWshNetwork = CreateObject(“WScript.Network”)

 

Microsoft Shell Controls And Automation

EARLY BINDING LATE BINDING
REFERENCE Microsoft Shell Controls And Automation
(shell32.dll)
EXAMPLE Dim oShell As Shell32.Shell


Set oShell = New Shell32.Shell

Dim oShell As Object


Set oShell = CreateObject(“Shell.Application”)

 


Access软件网交流QQ群(群号:198465573)
 
 相关文章
VBA中隐式声明与显示声明的区别  【杜超  2016/8/22】
Access 与 Excel 之对比(翻译)  【Jason  2017/12/14】
剪切板API在32位与64位的Access下不同的声明语法  【易勋  2021/4/1】
VBA编程-声明数组  【福哥(QQ86053924)  2022/11/17】
VBA编程-声明变量  【福哥(QQ86053924)  2022/11/22】
VBA编程-声明自动化对象变量  【福哥(QQ86053924)  2022/11/25】
常见问答
技术分类
相关资源
文章搜索
关于作者

金宇

文章分类

文章存档

友情链接