Visual Basic - enviar datos desde excell a sqlserverd

Life is soft - evento anual de software empresarial
 
Vista:

enviar datos desde excell a sqlserverd

Publicado por paulo (14 intervenciones) el 24/11/2005 16:41:06
por favor es urgente necesito saber como puedo exportar los datos desde un archivo excell hacia sql served 7.0 desde visual que alguien me ayude por favor
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:enviar datos desde excell a sqlserverd

Publicado por manu (87 intervenciones) el 24/11/2005 19:40:42
Este codigo es muy bueno
Sub Carga_File_xls(ByVal oArchivo As String)
Dim sExcel As String
Dim r As Double
Dim rsExcel As ADODB.Recordset
Dim rsWork As ADODB.Recordset
Dim sql As String
Dim Cnn As String
Dim strSheet As String

sExcel = oArchivo
strSheet = "Lista"

If Dir(sExcel) = "" Then
MsgBox "Archivo " & sExcel & " no Existe", vbExclamation + vbOKOnly, Me.Caption
Exit Sub
End If

Cnn = "DRIVER=Microsoft Excel Driver (*.xls);" & _
"DBQ=" & oArchivo

'Selecciona archivo Bonos para grabar la Información
sql = "SELECT * FROM Archivo_Destino"
Set rsWork = New ADODB.Recordset
Set rsWork.ActiveConnection = cnAccess'Tu coneccion de sql
With rsWork
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockBatchOptimistic
.Open sql, cnAccess
End With
Call cnAccess.Execute("DELETE FROM Archivo_Destino")

'Seleccionar la Hoja de excel para lectura
sql = "SELECT * FROM [" & strSheet & "$]"
Set rsExcel = New ADODB.Recordset
With rsExcel
.CursorLocation = adUseClient
.CursorType = adOpenStatic
.LockType = adLockReadOnly
.Open sql, Cnn
End With
Do Until rsExcel.EOF
If IsNull(rsExcel.Fields(0).Value) = True Then
GoTo Cierra
End If
With rsWork
.AddNew
.Fields(0).Value = rsExcel.Fields(0).Value
.Fields(1).Value = rsExcel.Fields(1).Value
.Fields(2).Value = rsExcel.Fields(2).Value
.Fields(3).Value = rsExcel.Fields(3).Value
.Fields(4).Value = rsExcel.Fields(4).Value
.Fields(5).Value = rsExcel.Fields(5).Value
On Error GoTo rsError_Handler
.UpdateBatch
End With
rsExcel.MoveNext
Loop
Cierra:
Set rsExcel.ActiveConnection = Nothing
rsExcel.Close
Set rsWork.ActiveConnection = Nothing
rsWork.Close
Exit Sub

rsError_Handler:
MessageStatusBar Msg2, False
Screen.MousePointer = vbDefault
'Si ocurre un error, al momento de crear el recordset
Msg = "Numero # : " & Err.Number & " " & Err.Description
Estilo = vbCritical + vbOKOnly
Título = Me.Caption
MsgBox Msg, Estilo, Título
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:enviar datos desde excell a sqlserverd

Publicado por paulo (14 intervenciones) el 25/11/2005 19:32:49
vale manuel me sirvio el codigo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar