Parámetros en "Obtener datos externos"

19/04/2007 - 15:12 por Mennegguzzi | Informe spam
Hola a todos, les hago una consulta.

Yo utilizo mucho la herramienta "Obtener datos externos - Nueva consulta de
base de datos", y me sirvió de mucho usar el Microsoft Query para modificar
las consultas

Así , armo las query con el Analizador de consultas del SQL y cuando la
tengo terminada, mediante el Microsoft Query la pongo en el Excel.

Tengo la siguiente inquietud:

Existe alguna manera de poner un parámetro en una celda para que lo tome le
query ?
Es decir que en el "where" de la query se capture un parámetro ingresado
mediante una celda

Si existe por favor me ayudarían, o bien con una explicación o diciéndome
donde la puedo encontrar.

Muchísimas gracias de antemano

Saludos

Pablo

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
19/04/2007 - 17:53 | Informe spam
hola, !

... Existe alguna manera de poner un parámetro en una celda para que lo tome le query ?
Es decir que en el "where" de la query se capture un parámetro ingresado mediante una celda...



puedes 'parametrizar' las consultas externas en excel a traves de ms-query, usando -nuevamente- el asistente si...
una vez que termines con el asistente para finalizar la consulta a la base de datos... si deseas agregar parametros variables...
1) puedes consultar/modificar/... la sentencia de la consulta [sql] desde el mismo menu de datos [o la BH de datos externos]
-> solicita modificar la consulta
-> avanza hasta el ultimo paso [finalizar]
-> en lugar de devolver los datos a excel... selecciona ->ver datos o modificar consulta en MS Query<-
-> elige: [menu] ver / sql... [o de la BH el icono de SQL]
2) una vez que decidas que partes de la consulta deseas convertir en parametros...
-> sustituye la/s fraccion/es apropiada/s de la sentencia por un signo ? [opcionalmente pudes darles un identificador CORTO]
[lo anterior ocasiona que ANTES de refrescar una consulta, MS-Query te pregunta por el -nuevo- valor del parametro]
-> termina la modificacion y devueve los datos a excel [tendras que responder una cuantas preguntas a los parametros] :))
3) posteriormente, puedes sustituir la/s pregunta/s de MS-Query por los valores que pueda tomar de celdas en tu hoja...
-> vuelve a ejecutar [menu] datos / obtener datos externos / parametros... [o desde la BH de datos externos]
-> selecciona [por cada parametro] la opcion de: tomar el valor de la siguiente celda:
-> y [obviamente] selecciona la celda apropiada para cada parametro
4) segun la parte de la sentencia sql que hayas parametrizado... debera haber una celda son la sintaxis EXACTA del parametro -?-

si deseas consultar sitios con informacion al respecto... visita:
-> Andy Wiggins: http://www.bygsoftware.com/Excel/sql.htm
-> Ole P. Erlandsen: http://www.erlandsendata.no/english...connstring
-> Carl Prothman: http://www.carlprothman.net/Default.aspx?tabid‡#OLEDBProviderForSQLServer
-> Dick Kusleika: http://www.dicks-clicks.com/excel/E...m#CreateUI

si cualquier duda... [o informacion adicional]... comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Mennegguzzi
19/04/2007 - 19:16 | Informe spam
Hola Hector, estoy intentando hacer lo que me indicás, pero al querer
modificar la consulta SQL desde el MS-Query, éste me dice que "No se admiten
parámetros en las consultas que no se pueden presentar de forma gráfica"

Te cuento también que lo que ponés en el paso 1) no lo puedo hacer
completamente así, porque cuando cliqueo en "modificar consulta" me va
directamente el MS-Query, y no tengo forma de modificarla si no es editando
la query en SQL

Te agradezco muchísimo tu ayuda.

Te mando un saludo

Pablo



PD: por si te sirve, la consulta es la siguiente:


SELECT
CJRMVH_FCHMOV,
CJRMVI_FCHAUX,
CJRMVI_CODFOR,
CJRMVI_NROFOR,
CJRMVI_CHEQUE,
(ISNULL(CJRMVH_NOMBPV,'') + ' - ' + ISNULL(cast(CJRMVH_TEXTOS as
varchar(50)),'')) as texto,
CASE CJRMVI_DEBHAB WHEN 'D' THEN CJRMVI_IMPORT ELSE 0 END,
CASE CJRMVI_DEBHAB WHEN 'D' THEN 0 ELSE CJRMVI_IMPORT END
FROM
CJRMVI
INNER JOIN CJRMVH ON
CJRMVI_MODFOR = CJRMVH_MODFOR AND
CJRMVI_CODFOR = CJRMVH_CODFOR AND
CJRMVH_NROFOR = CJRMVI_NROFOR
WHERE
CJRMVI_CODCPT = 'B02CCP' and
cjrmvi_codfor = ?
ORDER BY
CJRMVH_FCHMOV



"Héctor Miguel" escribió en el mensaje
news:
hola, !

... Existe alguna manera de poner un parámetro en una celda para que lo
tome le query ?
Es decir que en el "where" de la query se capture un parámetro ingresado
mediante una celda...



puedes 'parametrizar' las consultas externas en excel a traves de
ms-query, usando -nuevamente- el asistente si...
una vez que termines con el asistente para finalizar la consulta a la base
de datos... si deseas agregar parametros variables...
1) puedes consultar/modificar/... la sentencia de la consulta [sql] desde
el mismo menu de datos [o la BH de datos externos]
-> solicita modificar la consulta
-> avanza hasta el ultimo paso [finalizar]
-> en lugar de devolver los datos a excel... selecciona ->ver datos o
modificar consulta en MS Query<-
-> elige: [menu] ver / sql... [o de la BH el icono de SQL]
2) una vez que decidas que partes de la consulta deseas convertir en
parametros...
-> sustituye la/s fraccion/es apropiada/s de la sentencia por un signo
? [opcionalmente pudes darles un identificador CORTO]
[lo anterior ocasiona que ANTES de refrescar una consulta, MS-Query
te pregunta por el -nuevo- valor del parametro]
-> termina la modificacion y devueve los datos a excel [tendras que
responder una cuantas preguntas a los parametros] :))
3) posteriormente, puedes sustituir la/s pregunta/s de MS-Query por los
valores que pueda tomar de celdas en tu hoja...
-> vuelve a ejecutar [menu] datos / obtener datos externos /
parametros... [o desde la BH de datos externos]
-> selecciona [por cada parametro] la opcion de: tomar el valor de la
siguiente celda:
-> y [obviamente] selecciona la celda apropiada para cada parametro
4) segun la parte de la sentencia sql que hayas parametrizado... debera
haber una celda son la sintaxis EXACTA del parametro -?-

si deseas consultar sitios con informacion al respecto... visita:
-> Andy Wiggins: http://www.bygsoftware.com/Excel/sql.htm
-> Ole P. Erlandsen:
http://www.erlandsendata.no/english...connstring
-> Carl Prothman:
http://www.carlprothman.net/Default.aspx?tabid‡#OLEDBProviderForSQLServer
-> Dick Kusleika:
http://www.dicks-clicks.com/excel/E...m#CreateUI

si cualquier duda... [o informacion adicional]... comentas?
saludos,
hector.

Respuesta Responder a este mensaje
#3 Héctor Miguel
19/04/2007 - 19:32 | Informe spam
hola, Pablo !

... intentando hacer lo que me indicas, pero al querer modificar la consulta SQL desde el MS-Query
... me dice que "No se admiten parametros en las consultas que no se pueden presentar de forma grafica" [...]



si lo que necesitas es 'pasarle parametros' desde excel por MS-Query...
-> a procedimientos almacenados [stored procedures] en SQL-Server [o cosa parecida]...

-> ve si te sirve algo de lo comentado en los siguientes enlaces...
Ed Ferrero: Run SQL Server stored procedure in Excel macro -> http://tinyurl.com/pdmg2
Robin Hammond: Stored procedures -> http://tinyurl.com/lpak2
{+} Getting stored procedure result to excel -> http://tinyurl.com/epors
Sean Connolly: pass paramter to SQL server stored procedure -> http://tinyurl.com/rdavt
conversaciones varias -> http://tinyurl.com/op4k5
otra conversacion mas > http://tinyurl.com/3yyjtr

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Mennegguzzi
24/04/2007 - 13:10 | Informe spam
Hector, probé con uno de los links que me mandaste y anduvo perfecto

muchísimas gracias por tu ayuda

saludos

Pablo


"Héctor Miguel" escribió en el mensaje
news:
hola, Pablo !

... intentando hacer lo que me indicas, pero al querer modificar la
consulta SQL desde el MS-Query
... me dice que "No se admiten parametros en las consultas que no se
pueden presentar de forma grafica" [...]



si lo que necesitas es 'pasarle parametros' desde excel por MS-Query...
-> a procedimientos almacenados [stored procedures] en SQL-Server [o cosa
parecida]...

-> ve si te sirve algo de lo comentado en los siguientes enlaces...
Ed Ferrero: Run SQL Server stored procedure in Excel macro ->
http://tinyurl.com/pdmg2
Robin Hammond: Stored procedures -> http://tinyurl.com/lpak2
{+} Getting stored procedure result to excel ->
http://tinyurl.com/epors
Sean Connolly: pass paramter to SQL server stored procedure ->
http://tinyurl.com/rdavt
conversaciones varias -> http://tinyurl.com/op4k5
otra conversacion mas > http://tinyurl.com/3yyjtr

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.

Respuesta Responder a este mensaje
#5 Alex
09/06/2007 - 00:39 | Informe spam
Verifica que en los datos de origen no estes solicitando algun dato (en tu
consulta de origen de access por ejemplo), ese mensaje te pasa si pides un
año o algun otro dato, pon valores fijos y correlo, saludos.

Alex



"Mennegguzzi" escribió:

Hola a todos, les hago una consulta.

Yo utilizo mucho la herramienta "Obtener datos externos - Nueva consulta de
base de datos", y me sirvió de mucho usar el Microsoft Query para modificar
las consultas

Así , armo las query con el Analizador de consultas del SQL y cuando la
tengo terminada, mediante el Microsoft Query la pongo en el Excel.

Tengo la siguiente inquietud:

Existe alguna manera de poner un parámetro en una celda para que lo tome le
query ?
Es decir que en el "where" de la query se capture un parámetro ingresado
mediante una celda

Si existe por favor me ayudarían, o bien con una explicación o diciéndome
donde la puedo encontrar.

Muchísimas gracias de antemano

Saludos

Pablo



email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida