Excel VBAparsingSQL连接string
我有一个Excel VBA使用连接string连接到SQL数据库,但我想知道是否有可能从单元parsing到连接string? 例如,如果我有单元格B2
SQLSVR1\Instance1
和B3
SQLSVR1\Instance1
,那么我可以将它放入连接string,如下所示:
objMyConn.ConnectionString = "Provider=sqloledb; Data Source=**"B2"**; Initial Catalog=**"B3"**; Integrated Security=SSPI;"
那可能吗?
提前致谢。
完全可能:
objMyConn.ConnectionString = "Provider=sqloledb; Data Source=" & range("B2").value & "; Initial Catalog=" & range("B3").value &"; Integrated Security=SSPI;"
这基本上连接你的string与这些单元格中的值。
Range.Value文件。
是的,就像EoinS提到的那样。 但请注意确定您的工作表。 对于您想要在另一个工作表中定义连接string的情况。 尝试这样的事情:
Dim wb as workbook, ws as worksheet Set wb = Thisworkbook Set ws = wb.Worksheets("TheNameofYourWorksheetsWithYourConnectionsDefined") ''Get Cnxn details sDsn = wsc.Cells(wsc.Range("YourLabeloftheCell").Row + 1, wsc.Range("YourLabeloftheCell").Column).Value sUser = wsc.Cells(wsc.Range("YourLabeloftheCell").Row + 2, wsc.Range("YourLabeloftheCell").Column).Value sPwd = wsc.Cells(wsc.Range("YourLabeloftheCell").Row + 3, wsc.Range("YourLabeloftheCell").Column).Value sSql= GetRangeString(Worksheets("SQL").Range("A17:A22")) check = DbSelectQueryToSheet(sDsn, "", sUser, sPwd, sSql, Worksheets("TargetWorksheet").Range("A1"), True)
希望这可以帮助!