I am trying to export the excel data to sql server using the following code. It works fine. but i want to select a range of data from excel starting from R5 ..instead of select *. How do i do that...??? any valuable replies??
Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
'Dim con1 As New ADODB.Connection
Dim CreateStr As String
Dim Sqlstr As String
Dim i As Integer
If con.State = adStateOpen Then con.Close
'If con1.State = adStateOpen Then con1.Close
If rs.State = adStateOpen Then rs.Close
'con1.Open "Driver={SQL Server};" & _
' "Server=MYSEVER;" & _
' "Database=MYDATABASE;" & _
' "Uid=MYUID;" & _
' "Pwd=MYPWD" '''''''''''''''''
con.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
"DriverId=790;" & _
"Dbq= D:/KeyMileStone.xls;" & _
"DefaultDir=D:\"
rs.Open "select * from [Sheet1$]", con, 3, 1
For i = 0 To rs.Fields.Count - 1
CreateStr = CreateStr & rs.Fields(i).Name & " varchar(" & rs.Fields(i).ActualSize & "),"
Next
objCon.Execute " Create table Temptable" & PID & "(" & Mid(CreateStr, 1, Len(CreateStr) - 1) & ")"
i = 0
While Not rs.EOF
For i = 0 To rs.Fields.Count - 1
Sqlstr = Sqlstr & "'" & rs.Fields(i).Value & "',"
Next
Sqlstr = "Insert into Temptable" & PID & " Values(" & Mid(Sqlstr, 1, Len(Sqlstr) - 1) & ")"
objCon.Execute Sqlstr
Sqlstr = ""
rs.MoveNext
Wend
End Sub
Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
'Dim con1 As New ADODB.Connection
Dim CreateStr As String
Dim Sqlstr As String
Dim i As Integer
If con.State = adStateOpen Then con.Close
'If con1.State = adStateOpen Then con1.Close
If rs.State = adStateOpen Then rs.Close
'con1.Open "Driver={SQL Server};" & _
' "Server=MYSEVER;" & _
' "Database=MYDATABASE;" & _
' "Uid=MYUID;" & _
' "Pwd=MYPWD" '''''''''''''''''
con.Open "Driver={Microsoft Excel Driver (*.xls)};" & _
"DriverId=790;" & _
"Dbq= D:/KeyMileStone.xls;" & _
"DefaultDir=D:\"
rs.Open "select * from [Sheet1$]", con, 3, 1
For i = 0 To rs.Fields.Count - 1
CreateStr = CreateStr & rs.Fields(i).Name & " varchar(" & rs.Fields(i).ActualSize & "),"
Next
objCon.Execute " Create table Temptable" & PID & "(" & Mid(CreateStr, 1, Len(CreateStr) - 1) & ")"
i = 0
While Not rs.EOF
For i = 0 To rs.Fields.Count - 1
Sqlstr = Sqlstr & "'" & rs.Fields(i).Value & "',"
Next
Sqlstr = "Insert into Temptable" & PID & " Values(" & Mid(Sqlstr, 1, Len(Sqlstr) - 1) & ")"
objCon.Execute Sqlstr
Sqlstr = ""
rs.MoveNext
Wend
End Sub
Last edited: