SQL - Insertar valores en SQL desde Excel

 
Vista:
sin imagen de perfil

Insertar valores en SQL desde Excel

Publicado por Jonathan (1 intervención) el 18/05/2018 17:45:27
Hola a todos, soy nuevo en este foro, estoy aprendiendo de programación. Tengo algunos proyectos basicos en VBA y ahora quiero aprender más respecto a base de datos.

Espero que me puedan ayudar con esta consulta.

Hace tiempo que estoy tratando de crear un código en Visual Basic que inserte valores en una SQL local.

-Mi versión de SQL es 2014
-Tengo una base SQL local y ocupo la autenticación de Windows.
-Mi versión de Excel y VB es 2010
- Las variables están igualadas a 1 para probar, despues yo las asigno al valor de una celda en excel.


Tengo el siguiente código, lo he rescatado de varias partes, me da el siguiente error y no sé como solucionarlo.


"Error en la conexión: No se puede utilizar la conexión para realizar esta operación. Está cerrada o no es válida en este contexto"

Espero que me puedan ayudar, no he podido solucionar esto.



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
54
55
56
57
58
59
60
Public Sub run2()
 
Dim cn As ADODB.Connection
 
On Error GoTo etiqueta
 
Set cn = New ADODB.Connection
 
cn.Open "Driver={SQL Server};" & _
"Server=180.180.180;" & _
"Database=reportecadadoshoras;" & _
"Uid=;" & _
"Pwd="
 
MsgBox "Conectado"
 
Call Query
 
 
Exit Sub
 
etiqueta:
 
MsgBox "Error en la conexión: " & Err.Description
 
End Sub
 
 
 
 
 
 
 
 
 
Function Query()
 
    Dim SQL As String
    Dim RS As ADODB.Recordset
    Dim Field As ADODB.Field
 
 
    Set RS = New ADODB.Recordset
 
 
    Fecha = 1
    Inicio = 1
    Skill = 1
 
    SQL = "insert into CMS values('" & Fecha & "','" & Inicio & "'," & Skill & ");"
    RS.Open SQL, CN
 
End Function
 
 
 
 
Function Disconnect()
    CN.Close
End Function
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