Consultas "SQL" en VBA
Publicado por Juan Carlos (3 intervenciones) el 28/10/2020 15:12:59
Buen dia.
Tengo una tabla en excel con 10 columnas y me gustaria llenar un listbox pero solamente con 5 columnas de esa tabla.
Investigando un poco vi que hay una manera de hacer consultas com si fueran de SQL pero sobre tablas nativas de excel.
Hice el sigueinte codigo...
Pero el listbox no me acepta el rowsourece.
Cuál es la manera correcta de hacer lo que pretendo?
* RegistroTicket es el nombre de mi hoja de excel
*Tbl_RegiTick" es el nombre de mi tabla que esta contenida en la hoja "RegistroTicket "
*En el ejemplo pongo select * ......, pero en realidad me gustaria selecionar solo algunos campos(columnas de la tabla)
Ayuda por favor
Tengo una tabla en excel con 10 columnas y me gustaria llenar un listbox pero solamente con 5 columnas de esa tabla.
Investigando un poco vi que hay una manera de hacer consultas com si fueran de SQL pero sobre tablas nativas de excel.
Hice el sigueinte codigo...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Dim cn As ADODB.Connection, rs As ADODB.Recordset, sql As String
strFile = ThisWorkbook.FullName
strCon = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & strFile _
& ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
cn.Open strCon
strSQL = "Select * from [RegistroTicket$]"
rs.Open strSQL, cn
Lbx_CataTick.RowSource = rs
Pero el listbox no me acepta el rowsourece.
Cuál es la manera correcta de hacer lo que pretendo?
* RegistroTicket es el nombre de mi hoja de excel
*Tbl_RegiTick" es el nombre de mi tabla que esta contenida en la hoja "RegistroTicket "
*En el ejemplo pongo select * ......, pero en realidad me gustaria selecionar solo algunos campos(columnas de la tabla)
Ayuda por favor
Valora esta pregunta


0