软件:EXCEL , MSSQL
版本:EXCEL 2010 , MSSQL 2012
请教各位大大
目前使用串连两个平台的方法是,先取得MSSQL资料到写到EXCEL工作表,再去JOIN两个表
Set Con = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
Con.Open "Provider=SQLOLEDB.1;User ID=sa;Data Source=D1;Initial
Catalog=T1" '连MSSQL
SQL = "SQL语法"
Set Rs = Con.Execute(SQL) '执行SQL
For i = 0 To Rs.Fields.Count - 1 '写入结果栏名
[A1].Offset(0, i) = Rs.Fields(i).Name
Next
[A2].CopyFromRecordset Rs '写入结果内容
Con.Close '中断连线
Con.Open "Provider=Microsoft.ACE.OLEDB.12.0;Extended Properties=Excel
12.0;Data Source=" & ActiveWorkbook.FullName '连EXCEL
SQL = "SQL语法"
Set Rs = Con.Execute(SQL) '执行SQL
再像上方一样写入栏名和内容
想请问:
1.是否有方法可以,直接JOIN两个平台资料?
2.若没有,是否有方法可以,取得SQL资料时,省略先写入工作表的步骤?
例如,用Rs.GetRows先把资料先写到变量里,可否用这个这个变量直接JOIN工作表