sql >> Databasteknik >  >> RDS >> Sqlserver

skriva kopia från postuppsättning till intervall

Det kan vara enklast att inkludera Excel-arket som en sammanfogad tabell. Till exempel:

Dim cn As New ADODB.Connection
Dim rs As New ADODB.Recordset

''Not the best way to get the name
strFile = ActiveWorkbook.FullName

''2007 / 2010 connection
strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile _
    & ";Extended Properties=""Excel 12.0 xml;HDR=Yes;"";"

cn.Open strCon

''ODBC Connection for sql server
scn = "[ODBC;DRIVER=SQL Server;SERVER\Instance;" _ 
    & "Trusted_Connection=Yes;DATABASE=Test]"

sSQL = "SELECT a.Stuff, b.ID, b.AText FROM [Sheet5$] a " _
& "INNER JOIN " & scn & ".table_1 b " _             
& "ON a.Stuff = b.AText"
rs.Open sSQL, cn

ActiveWorkbook.Sheets("Sheet7").Cells(1, 1).CopyFromRecordset rs

Med alla länkar till SQL Server måste du vara ganska säker på att du arbetar med ren data.

Observera att jag har hänvisat till Celler. Om du inte gillar tanken på att koppla ihop arket kan du även referera till celler och steg, till exempel For i=1 To MaxRows




  1. SQL JOIN i PostgreSQL - annan exekveringsplan i WHERE-satsen än i ON-satsen

  2. Hur man bearbetar 0000-00-00 datum i jdbc MySQL-fråga

  3. Det går inte att ansluta till fjärrdatabasen Heroku Postgres med Play Framework 2.2.2

  4. skapa orakelpaket påträffade PLS-00103:Påträffade symbolen CREATE