Ver Mensaje Individual
  #4 (permalink)  
Antiguo 16-04-2008, 21:11:26
Margarita
 
Mensajes: n/a
Predeterminado Re: buscar en un campo de Access desde Excel

Muchas gracias Juan M.

Estoy realizando una aplicación en Excel para la gestión de costes de unas
obras. Los datos serán guardados en tablas de access y luego recuperados
para crear informes.

la macro que me pegas me viene perfecta. sólo necesito hacer un pequeño
cambio y arreglado.

muchas gracias.





"Juan M" <jumogan***NOSPAMhotmail.com> escribió en el mensaje de noticias
news:e5Vs$i$nIHA.1736***TK2MSFTNGP04.phx.gbl...
> Hola Margarita,
>
> Te describo un proceso que no lleva código
>
> Primero establece una celda donde esté el valor de la celda que vas a usar
> como parametro (por ejemplo B3)
>
> Ahora ve al Menú Datos>Obtener Datos Externos>Nueva Consulta de Bases de
> Datos..
> Te aparece un cuadro de dialogo donde puedes elegir diferentes bases de
> datos. Selecciona la que corresponda, en tu caso MS Access Database y
> acepta.
> Localiza tu base de datos y acepta.
> Te aparecerá un nuevo cuadro de dialogo con las tablas y las consultas de
> tu base de datos, selecciona la tabla que corresponda y elige los campos
> que quieras tener representados y ve al siguiente.
> En el siguiete paso te pregunta cual/cuales son los campos de la consulta
> Selecciona el campo sobre el que quieres hacer la consulta y da un valor
> para acotar la consulta
> Ahora te preguntará como quieres que ordene la consulta, al gusto.
> Aceptas y aparece un dialogo donde te pregunta si quieres guardar la
> consulta, devolver los datos a Excel, Ver datos o modificar la consulta en
> microsoft Query, o crear un cubo OLAP.
> Selecciona la de ver datos o modificar la consulta (la segunda opción).
>
> Si todo ha ido bien aparecerá en pantalla el Microsoft Query con una
> pantalla dividida en tres zonas, la primera que hará relacción a la tabla
> donde vas a hacer la consulta, una segunda donde están los campos de
> criterio con el valor y una tercera donde está el resultado de la
> consulta.
>
> En la segunda zona, donde aparece el valor Escribe entre corchetes (Muy
> importante) algo que te recuerde de que es la consulta pe [Clientes].
> Comprueba que no este marcado el penúltimo icono de la barra de
> herramientas del MS query.
>
> Una vez modificado todo, sal del MS Query.
>
> Te aparecerá un dialogo donde te pregunta donde lo quieres pegar,
> selecciona por ejemplo la celda A10. Ten cuidado de no pisar la celda que
> habiamos reservado para el parámetro (B3), y acepta. La consulta se ha
> realizado.
>
> Ahora situate dentro del rango donde está hecha la consulta (apartir de
> A10)
> Desde el Menú Datos>Obtener datos Externos>Parametros elige la tercera
> opción Tomar el valor de la siguiente celda, puedes activar también
> actualizar automaticamente cuando cambie el valor.
> Aceptas y a probar que tal funciona.
>
> Si lo prefieres por código:
>
> Con los datos de tu otra consulta.
>
> Sub test()
> Dim cnt As ADODB.Connection
> Dim rst As ADODB.Recordset
> Dim SQL As String
>
> Set cnt = New ADODB.Connection
>
> cnt.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
> "Data Source=C:\My Documents\SalesDb2K.mdb;"
>
> SQL = "SELECT * FROM tblCustomers "
> SQL = SQL & "WHERE micampo ='" & Worksheets("Hoja1").Range("B3") & "'"
>
> Set rst = New ADODB.Recordset
> rst.Open SQL, cnt, adOpenForwardOnly, adLockOptimistic, adCmdText
>
> Worksheets("Hoja1").Range("A10").CopyFromRecordset rst
>
> Set rst = Nothing
> Set cnt = Nothing
>
> End Sub
>
> Un saludo,
> Juan
>
> "Margarita" escribió
>> Bueno, creo que el asunto lo explica casi todo.
>>
>> Necesitaría buscar en un campo de Access el valor introducido en un campo
>> de texto de un formulario de Excel.
>>
>> Agradezco cualquier colaboración
>>
>>
>> Marga
>>

>
>
>



Responder Con Cita