1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| Sub ADOExcelToSQLServer()
Dim Cn As ADODB.Connection
Dim ServerName, DatabaseName, TableName, UserID, Password As String
Dim rs As ADODB.Recordset
Dim RowCounter, StartRow, EndRow As Long
Dim ColCounter, NoOfField As Integer
Dim ws As Worksheet
Dim Valeurs As String
Set rs = New ADODB.Recordset
ServerName = "OASIS-FTM-1"
DatabaseName = "LANGUAGE"
Table = "LANGUAGE.dbo.tab_ANA_I"
UserID = "sa"
Password = "BocO@sis@1"
Set ws = ThisWorkbook.Worksheets("LANGUAGE_ANA_I")
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''Ici on va crée la connexion
sConnString = "Provider=SQLOLEDB;Data Source=" & ServerName & ";Initial Catalog=LANGUAGE;User id = " & UserID & ";password = " & Password
Set Cn = New ADODB.Connection
Cn.Open sConnString
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
'With Sheets("LANGUAGE_I_ANA")
' i = 2
' Do
' Valeur1 = Sheets("LANGUAGE_I_ANA").Cells(i, 1).Value
' Valeur2 = Sheets("LANGUAGE_I_ANA").Cells(i, 2).Value
' requete = "INSERT INTO [LANGUAGE].[dbo].[tab_ANA_I] ([TAG],[DESC]) " & _
' " VALUES('" & Valeur1 & "','" & Valeur2 & "')"
' Cn.Execute requete
' i = i + 1
' Loop While .Cells(i, 1) <> ""
'End With
'Cn.Close
'requete = "INSERT INTO [LANGUAGE].[dbo].[tab_ANA_I] ([TAG],[DESC]) " & _
" VALUES('"SELECT [TAG],[DESC] FROM Sheets('"LANGUAGE_I_ANA"')"')"
With Sheets("LANGUAGE_I_ANA").UsedRange
For i = 2 To .Rows.Count
If Valeurs = "" Then Valeurs = "'" & .Cells(i, 1).Value & "','" & .Cells(i, 2).Value & "')" Else Valeurs = Valeurs & ",('" & .Cells(i, 1).Value & "','" & .Cells(i, 2).Value & "')"
Next
End With
Cn.Execute "Insert INTO Table[(TAG[,DESC]) Values " & Valeurs
Cn.Close
End Sub |
Partager