Macro en consulta de query

30/05/2008 - 17:17 por Boris | Informe spam
Hola buenos días a todos.

Estoy accediendo a una consulta de query ya existente mediante el
siguiente código.

Sub Consul()

Dim nit As Double

nit = Val(InputBox("Digite el número de cédula", "Cédula"))
Range("A2").Select
With ActiveSheet.QueryTables.Add(Connection:=Array(Array( _
"ODBC;DSN=MS Access Database;DBQ=C:\Boris Durango\Tablas Base
HL\Bases93-2006.mdb;DefaultDir=C:\Boris Durango\Tablas Base
HL;DriverId" _
), Array("%;FIL=MS
Access;MaxBufferSize 48;PageTimeout=5;")), Destination _
:=Range("A1"))
.CommandText = Array( _
"SELECT Basica.Cedula, Basica.Nombre, Basica.Tipo,
Basica.FNacimiento, Basica.Sexo FROM `C:\Boris Durango\Tablas Base HL
\Bases93-2006`.Basica Basica WHERE (Basica.Cedula=nit) ORDER BY
Basica.Cedula" _
)
.Name = "Consulta de prueba_1"
.SourceConnectionFile = _
"C:\Documents and Settings\bdurango\Datos de programa\Microsoft
\Consultas\Consulta de prueba.dqy"
.Refresh BackgroundQuery:=False
End With
Range("A3").Select
End Sub

El problema que tengo es que cuando en el where asigno el valor en
números de la cédula a buscar, me genera la consulta sin problemas,
pero como lo que quiero es que ese número me lo tome por teclado, al
asignarle a Basica.Cedula la variable directamente, me genera error en
la fila .Refresh BackgroundQuery:=False. Supongo que esa asignación
está errada, pero ya he probado de varias formas y no me acepta la
variable.

Espero no haberme complicado tanto con la pregunta.

Agradezco su colaboración.

Boris
 

Leer las respuestas

#1 Boris
30/05/2008 - 21:30 | Informe spam
Muchas gracias, ya lo solucioné.

Saludos

Boris

Preguntas similares