我有使查詢和一個數據透視表的宏。我需要在可以將通配符添加到Connections(i)嗎?
For i = 2 To ThisWorkbook.Connections.Count
Set qr = ThisWorkbook.Connections("Connection2").ODBCConnection
qr.CommandText = iSql
添加外卡,其中("Connection2")
數量2
是什麼樣的變化。我想使用通配符而不是數字。
我有使查詢和一個數據透視表的宏。我需要在可以將通配符添加到Connections(i)嗎?
For i = 2 To ThisWorkbook.Connections.Count
Set qr = ThisWorkbook.Connections("Connection2").ODBCConnection
qr.CommandText = iSql
添加外卡,其中("Connection2")
數量2
是什麼樣的變化。我想使用通配符而不是數字。
我不知道在連接名稱中使用通配符的方法。但即使你能夠達到什麼目的,特別是在循環中能解決什麼問題?它會一直給你相同的名字。
替代方案?
Sub Sample()
Dim i As Long
For i = 1 To ThisWorkbook.Connections.Count
If ThisWorkbook.Connections(i).Name Like "Connection*" Then
Set qr = ThisWorkbook.Connections(ThisWorkbook.Connections(i).Name).ODBCConnection
End If
Next i
End Sub
但就像我說的,如果有兩個連接說Connection1
和Connection2
。上面總是會得到Connection1
。
非常感謝!它的工作,我必須做一些測試。 –
順便說一句,如果你不想使用LIKE,你也可以使用'INSTR()'。例如'If Instr(1,ThisWorkbook.Connections(i).Name,「Connection」,vbTextCompare)Then' –
這沒有意義嗎?你需要用其他號碼替換2是你想要做什麼? – 2013-12-12 12:54:51