替换 Excel 连接字符串中的值
Replace Value in Excel Connection string
任何人都可以建议一个 VBA 程序来替换 Excel SQl 服务器 OLEDB 连接字符串的元素吗?
我试过下面的代码,但我认为这与 dbconnection
变量的数据类型有关。
Sub ModifyConnection()
Dim ComHostname As String
ComHostname = Environ$("computername")
Call MsgBox(ComHostname)
Dim dbconnection As String
dbconnection = ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection
dbconnection = Replace(dbconnection, "___BTN_____\", ComHostname & "\")
Set ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection = dbconnection
End Sub
该代码试图用当前计算机的主机名替换连接字符串中的计算机主机名实例。
它抛出错误 424 - 需要对象。
原来是连接名错误的简单案例。操作代码如下:
Sub ModifyConnection()
Dim ComHostname As String
ComHostname = Environ$("computername")
Call MsgBox(ComHostname)
Dim dbconnection As String
dbconnection = ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection
dbconnection = Replace(dbconnection, "???BTN?????\", ComHostname & "\")
ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection = dbconnection
End Sub
任何人都可以建议一个 VBA 程序来替换 Excel SQl 服务器 OLEDB 连接字符串的元素吗?
我试过下面的代码,但我认为这与 dbconnection
变量的数据类型有关。
Sub ModifyConnection()
Dim ComHostname As String
ComHostname = Environ$("computername")
Call MsgBox(ComHostname)
Dim dbconnection As String
dbconnection = ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection
dbconnection = Replace(dbconnection, "___BTN_____\", ComHostname & "\")
Set ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection = dbconnection
End Sub
该代码试图用当前计算机的主机名替换连接字符串中的计算机主机名实例。
它抛出错误 424 - 需要对象。
原来是连接名错误的简单案例。操作代码如下:
Sub ModifyConnection()
Dim ComHostname As String
ComHostname = Environ$("computername")
Call MsgBox(ComHostname)
Dim dbconnection As String
dbconnection = ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection
dbconnection = Replace(dbconnection, "???BTN?????\", ComHostname & "\")
ActiveWorkbook.Connections("ConnectionName").OLEDBConnection.connection = dbconnection
End Sub