Excel 我可以将通配符添加到连接(I)中吗?

Excel 我可以将通配符添加到连接(I)中吗?,excel,excel-2010,vba,Excel,Excel 2010,Vba,我有一个宏,可以进行查询,还有一个透视表。我需要添加通配符 For i = 2 To ThisWorkbook.Connections.Count Set qr = ThisWorkbook.Connections("Connection2").ODBCConnection qr.CommandText = iSql 其中(“连接2”)数字2是变化的内容。我想使用通配符而不是数字。我不知道在连接名称中使用通配符的方法。但即使你能做到,那它还能解决什么问题,尤其是在循环中?它总是给你相同

我有一个宏,可以进行查询,还有一个透视表。我需要添加通配符

For i = 2 To ThisWorkbook.Connections.Count
Set qr = ThisWorkbook.Connections("Connection2").ODBCConnection
    qr.CommandText = iSql

其中
(“连接2”)
数字
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

这没有意义吗?您需要将2替换为其他数字,这就是您要做的吗?顺便说一句,如果您不想像那样使用
指令()
,也可以使用
指令。例如
如果Instr(1,thishworkbook.Connections(i).Name,“Connection”,vbTextCompare),则