Tecnología

Inicio

Cómo pasar los parámetros de Excel a Microsoft Query

Cómo pasar los parámetros de Excel a Microsoft Query


Tener el conocimiento para pasar parámetros de Microsoft Excel para una consulta en Microsoft Office Access puede hacer que su aplicación de base de datos más dinámico. Excel es una hoja de cálculo a menudo se utiliza para almacenar y analizar grandes cantidades de datos. El acceso es un sistema de gestión de base de datos relacional utilizado para diseñar bases de datos locales. Visual Basic para Aplicaciones (VBA) es un lenguaje de programación utilizado para automatizar tareas rutinarias, como el paso de parámetros desde Excel a Access. Una consulta se utiliza para recuperar información de las tablas de base de datos.

Instrucciones

1 Abra Microsoft Office Excel, escriba "1" en "A1", "2" en "B1", y en "3" "C1". Guarde el libro como "myExceldata" en "C: \".

2 Inicie Microsoft Office Access, seleccione "base de datos de Sosa" haga clic en "Crear". Seleccione el menú "Herramientas de base de datos" y haga clic en "Visual Basic". Haga clic en el menú "Insertar" y seleccione "Módulo".

3 Haga clic en el menú "Herramientas", seleccione "Referencias" y marca la casilla junto a "Microsoft Excel <número de versión> Biblioteca de objetos." Haga clic en Aceptar."

4 Copia y pega el siguiente código VBA para abrir el libro "myExceldata". Que va a utilizar el valor en "B1" como parámetro para consultar los datos de la tabla "dbAccessTable" creada y mostrar la descripción a través de un cuadro de mensaje.

passExcelParamenters Private Sub ()

Dim como secuencia strSQL

DBS dévil como Base de Datos

Dim primera medida de registros

Dim XLSPar como número entero

Dim XLSApp Como Excel.Application

Dim XLXBook Como Excel.Workbook

Dim XLSSheet Como Excel.Worksheet

Set dbs = CurrentDb

Establecer XLXBook = Workbooks.Add (Plantilla: = "G: \ myExcelData.xlsx")

Establecer XLSApp = XLXBook.Parent

Establecer XLSSheet = XLXBook.Worksheets ( "Sheet1")

con XLSSheet

.Range ( "B1"). Seleccione

XLSPar = Selection.Value

Terminar con

XLXBook.Close

strSQL = "CREATE TABLE dbAccessTable (NÚMERO prod_id, prodct TEXTO);"

DoCmd.SetWarnings falsos

DoCmd.RunSQL (strSQL)

strSQL = "INSERT INTO dbAccessTable (prod_id, prodct)"

strSQL = strSQL y "VALUES (1, 'Cars');"

DoCmd.RunSQL (strSQL)

strSQL = "INSERT INTO dbAccessTable (prod_id, prodct)"

strSQL = strSQL y "VALUES (2, 'Camiones');"

DoCmd.RunSQL (strSQL)

sqlstr = "SELECT dbAccessTable.Prod_ID, dbAccessTable.Prodct"

sqlstr = sqlstr Y "DE dbAccessTable"

sqlstr = sqlstr & "WHERE (((dbAccessTable.Prod_ID) =" & (XLSPar) & "));"

Establecer primera = dbs.OpenRecordset (sqlstr)

rst.MoveLast

rst.MoveFirst

MsgBox "La descripción para la identificación del producto en B1 es" & rst.Fields (1) .Value

rst.Close

dbs.Close

End Sub

5 Pulse la tecla "F5" para ejecutar la subrutina.