Error de Sintaxis (falta operador) en la expresión de consulta...
Cita de Patricio en 21 de junio de 2024, 06:58Estimados buenas noches, al compilar este programa en VBA me arroja el siguiente error: Error de Sintaxis (falta operador) en la expresión de consulta..., adjunto imagen por si me puden ayudar, gracias.
Function GetDataFromTable(strWsName As String, strListObjectName As String, strFilter As String) As ADODB.recordset
Dim ws As Worksheet
Dim lo As ListObjectSet ws = ThisWorkbook.Sheets(strWsName)
Set lo = ws.ListObjects(strListObjectName)'Crear un conector ADODB para poder ejecutar sentencias SQL
Dim recordset As New ADODB.recordset
Dim connection As New ADODB.connection
Dim sqlQuery As StringWith connection
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";" & _
"Extended Properties =""Excel 12.0 Xml;HDR=Yes"";"
.Open
End With
If strFilter vbNullString Then strFilter = " WHERE " & strFilter
sqlQuery = " SELECT * FROM [" & strWsName & "$" & lo.Range.Address(0, 0) & "]" & strFilter
Debug.Print sqlQuery
Set recordset = connection.Execute(sqlQuery) "aqui me arroja el error"
With recordset
.Close
.CursorType = adOpenKeyset
.Open
End With
Set GetDataFromTable = recordset
End Function
Estimados buenas noches, al compilar este programa en VBA me arroja el siguiente error: Error de Sintaxis (falta operador) en la expresión de consulta..., adjunto imagen por si me puden ayudar, gracias.
Function GetDataFromTable(strWsName As String, strListObjectName As String, strFilter As String) As ADODB.recordset
Dim ws As Worksheet
Dim lo As ListObject
Set ws = ThisWorkbook.Sheets(strWsName)
Set lo = ws.ListObjects(strListObjectName)
'Crear un conector ADODB para poder ejecutar sentencias SQL
Dim recordset As New ADODB.recordset
Dim connection As New ADODB.connection
Dim sqlQuery As String
With connection
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";" & _
"Extended Properties =""Excel 12.0 Xml;HDR=Yes"";"
.Open
End With
If strFilter vbNullString Then strFilter = " WHERE " & strFilter
sqlQuery = " SELECT * FROM [" & strWsName & "$" & lo.Range.Address(0, 0) & "]" & strFilter
Debug.Print sqlQuery
Set recordset = connection.Execute(sqlQuery) "aqui me arroja el error"
With recordset
.Close
.CursorType = adOpenKeyset
.Open
End With
Set GetDataFromTable = recordset
End Function
- Tienes que conectarte para acceder a las subidas.
Cita de Administrador en 25 de junio de 2024, 08:30Hola Patricio,
¿Qué consulta quieres realizar? ¿Sobre qué tablas? ¿Cómo es su estructura?
Cuéntanos un poco más o súbenos la BBDD.
Saludos.
Hola Patricio,
¿Qué consulta quieres realizar? ¿Sobre qué tablas? ¿Cómo es su estructura?
Cuéntanos un poco más o súbenos la BBDD.
Saludos.