Está en la página 1de 5

Cmo crear mediante programacin una nueva columna en un informe de Access

PRODUCTOS MICROSOFT STORE DESCARGAS SOPORTE Espaa

Pgina de inicio

Centro de soluciones

Bsqueda avanzada

Comunidades

Comprar productos

Contctenos

Mapa del web


Otros Recursos Otros sitios de soporte

Cmo crear mediante programacin una nueva columna en un informe de Access


Haga clic aqu para ver en paralelo el artculo de traduccin automtica y el artculo original en ingls. Advertencia: Artculo de Traduccin Automtica, vea la exencin de responsabilidad. Ver los productos a los que se aplica este artculo

Id. de artculo: 812719 - ltima revisin: jueves, 29 de marzo de 2007 - Versin: 10.1

Comunidades Obtener ayuda ahora

En esta pgina Expandir todo | Contraer todo

Resumen

En este artculo se describe cmo crear mediante programacin una columna en un informe de Access. Puede agregar dinmicamente la columna en el informe mediante el mtodo 1 o 2 del mtodo que se describen en el "ms informacin" seccin. Volver al principio

Seleccione idioma (( Centros de Soluciones relacionados

Ms informacin Nota el cdigo de ejemplo de este artculo utiliza Objetos de acceso a datos de Microsoft. Para que este cdigo funcione correctamente, debe hacer referencia a la biblioteca de objetos Microsoft DAO 3.6. Para ello, haga clic en referencias en el men Herramientas en el Editor de Visual Basic y asegrese de que la casilla de verificacin de Biblioteca de objetos Microsoft DAO 3.6 est activada. Volver al principio

Access 2007 Access Access 2003 Access 2002

Mtodo 1 Agregar columnas al informe mediante programacin


El ejemplo siguiente muestra cmo crear mediante programacin un informe de Access. El cdigo genera un informe que se basa la consulta de origen de registros. El informe generado muestra la columna nombre y la columna de Apellidos de la tabla Employees de la base de datos de ejemplo Neptuno.mdb. 1. Inicie Access. 2. En el men Ayuda , haga clic en Bases de datos de ejemplo y, a continuacin, haga clic en Base de datos . Cierre el formulario de Panel de control principal cuando aparezca. Nota En Access 2007, haga clic en ejemplo en el panel Categoras de plantillas , haga clic en Neptuno 2007 y, a continuacin, haga clic en Descargar . 3. En el panel izquierdo, haga clic en informes . Nota En Access 2007, omita este paso. 4. En el panel derecho, haga doble clic en Crear informe en la vista Diseo . Nota En Access 2007, haga clic en Diseo del informe en el grupo informes en la ficha crear . 5. En el men archivo , haga clic en Guardar . Nota En Access 2007, haga clic en el Botn de Microsoft Office y, a continuacin, haga clic en Guardar . 6. En el cuadro de dilogo escriba AccessColumnBuilder y haga clic en Aceptar . 7. Cierre el informe. 8. En el panel izquierdo, seleccione formularios . Nota En Access 2007, omita este paso. 9. En el panel derecho, haga doble clic en Crear formulario en la vista Diseo . Nota En Access 2007, haga clic en Diseo del formulario en el grupo formularios en la ficha crear . 10. Agregue un botn de comando al formulario. Nota En Access 2007, haga clic en botn para agregar un botn al formulario en el grupo controles en la ficha Diseo . 11. Haga clic con el botn secundario del mouse en el botn de comando, haga clic en Generar evento , haga clic en Generador de cdigo en el cuadro de dilogo Elegir generador y, a continuacin, haga clic en Aceptar . 12. Agregue el cdigo que sigue al evento OnClick del botn de comando:
Dim txtNew As Access.TextBox Dim labNew As Access.Label Dim lngTop Dim lngLeft As Long As Long

http://support.microsoft.com/kb/812719/es[13/03/2012 07:10:47 p.m.]

Cmo crear mediante programacin una nueva columna en un informe de Access


Dim lblCol As Long

Dim rpt As Report Dim reportQuery As String Dim rs As DAO.Recordset Dim i As Integer Dim prevColwidth As long lngLeft = 0 lngTop = 0 ' Open the report to design. ' To make changes in the number of columns that appear at run time. DoCmd.OpenReport "AccessColumnBuilder", acViewDesign Set rpt = Reports![AccessColumnBuilder] ' Change the number of columns required as per your requirement. reportQuery = "SELECT FirstName, LastName FROM Employees" ' Open the recordset. Set rs = CodeDb().OpenRecordset(reportQuery) ' Assign the query as a record source to report control. rpt.RecordSource = reportQuery ' Set the value to zero so that the left margin is initialized. prevColwidth = 0 lblCol = 0 ' Print the page header for the report. For i = 0 To rs.Fields.Count - 1 Set labNew = CreateReportControl(rpt.Name, acLabel, acPageHeader, _ , rs.Fields(i).Name, lblcol, , , lngTop) labNew.SizeToFit lblCol = lblCol + 600 + labNew.Width Next ' Create the column depending on the number of fields selected in reportQuery. ' Assign the column value to new created column. For i = 0 To rs.Fields.Count - 1 ' Create new text box control and size to fit data. Set txtNew = CreateReportControl(rpt.Name, acTextBox, _ acDetail, , , lngLeft + 15 + prevColwidth, lngTop) txtNew.SizeToFit txtNew.ControlSource = rs(i).Name ' Modify the left margin depending on the number of columns ' and the size of each column. prevColwidth = prevColwidth + txtNew.width Next 'To save the modification to the report, 'DoCmd.Save ' View the generated report. DoCmd.OpenReport "AccessColumnBuilder", acViewPreview ' This opens the report in preview. uncomment the following line of code:

13. Guarde y ejecute el formulario. 14. Para ver el informe, haga clic en el botn de comando que agreg en el paso 10. Los registros que siga aparezcan en la primera pgina:

First Name

Last Name

Nancy

Davolio

Margaret

Peacock

........

.......

El informe contiene el nombre de columnas de Apellidos de la tabla Employees y. Puede guardar el informe o realice los cambios necesarios a la consulta y, a continuacin, ejecutar el informe.

http://support.microsoft.com/kb/812719/es[13/03/2012 07:10:47 p.m.]

Cmo crear mediante programacin una nueva columna en un informe de Access


Volver al principio

Mtodo 2 Agregar columnas al informe en tiempo de ejecucin al establecer la propiedad visible de la columna existente
En este ejemplo se muestra cmo mostrar una columna nueva en un informe, manipule la propiedad visible del control. El informe contiene cuatro columnas. La propiedad visible de las tres primeras columnas se establece en S . La propiedad visible de la cuarta columna se establece en no . En un salto de pgina, la propiedad visible de la cuarta columna se establece en S cuando aparezca la columna. 1. Inicie Access. 2. En el men Ayuda , haga clic en Bases de datos de ejemplo y, a continuacin, haga clic en Base de datos . Cierre el formulario de Panel de control principal cuando aparezca. Nota En Access 2007, haga clic en ejemplo en el panel Categoras de plantillas , haga clic en Neptuno 2007 y, a continuacin, haga clic en Descargar . 3. Para crear un informe denominado Informe1 y se basa en la tabla productos , siga estos pasos: a. En la ventana base de datos , haga clic en informes y, a continuacin, haga clic en nuevo . Nota En Access 2007, haga clic en Asistente para informes en el grupo informes en la ficha crear . b. En el cuadro de dilogo Nuevo informe , haga clic en Vista Diseo , seleccione productos y a continuacin, haga clic en Aceptar . c. Agregue los siguientes cuadros de texto a la seccin detalle del informe. Alinear los cuadros de texto. d. Coloque las etiquetas correspondientes en la seccin de Encabezado de pgina del informe. Alinear etiquetas.
Report: Report1 -------------------------Caption: TestReport ControlSource: Products Label: Name: ProductName_label Text Box: Name: ProductName ControlSource: ProductName

Label: Name: UnitPrice_label Text Box: Name: UnitPrice ControlSource: UnitPrice

Label: Name: UnitsInStock_label Text Box: Name: UnitsInStock ControlSource: UnitsInStock

Label: Name: TotalPrice_label Visible: No Text Box: Name: TotalPrice =[UnitPrice] * [UnitsInStock] ControlSource: Visible: No

4. Agregue un control de cuadro de texto con las propiedades siguientes a la seccin detalle . Coloque el cuadro de texto directamente encima del control NombreProducto . Este control acta como un contador para el nmero de registros en el informe.
Text Box: ----------------------Name: Counter ControlSource: =1 Visible: No RunningSum: Over All

5. En el cuadro de herramientas , haga clic en Salto de pgina . Nota En Access 2007, haga clic en Agregar o quitar salto de pgina en el grupo controles en la ficha Diseo . 6. Agregar un control de salto de pgina a la esquina inferior izquierda de la seccin detalle . Colocar el control de salto de pgina directamente debajo del control NombreProducto . Establezca el nombre de propiedad

http://support.microsoft.com/kb/812719/es[13/03/2012 07:10:47 p.m.]

Cmo crear mediante programacin una nueva columna en un informe de Access


PageBreak . 7. En la seccin de detalle , establezca la propiedad AlDarFormato (OnFormat) en el siguiente procedimiento de evento:
If Me![Counter] Mod 2 = 0 Then Me![PageBreak].Visible = True _ Else Me![PageBreak].Visible = False

8. Para reducir el espacio en blanco en el informe, coloque el puntero entre la parte inferior de la seccin detalle y el Pie de pgina y, a continuacin, arrastre hacia arriba. 9. En la seccin de Pie de pgina , establezca la propiedad OnPrint en el procedimiento de evento que sigue:

If Me![PageBreak].Visible = True Then Me![TotalPrice].Visible = True Me![TotalPrice_label].Visible = True Else Me![TotalPrice].Visible = False Me![TotalPrice_label].Visible = False End If

cuando se produce PageBreak , el TotalPrice columna aparece. 10. Obtener una vista previa del informe. Los registros que siga aparezcan en la primera pgina:
Product Name Unit Price Unit in Stock

Cahi

$18.00

39

Chang

$19.00

17

Tenga en cuenta que la primera pgina del informe contiene tres columnas. Los registros que siga aparecen en la pgina segunda:

Product Name

Unit Price

Unit in Stock

Total Amount

Aniseed Syrup

$10.00

13

130

Chef A...

$22.00

53

1166

Nota Se produce el salto de pgina despus de la primera pgina. Por lo tanto, la segunda pgina del informe contiene cuatro columnas. Volver al principio

Referencias

Para obtener informacin adicional, haga clic en los nmeros de artculo siguientes para verlos en Microsoft Knowledge Base: 231806 ACC2000: Encabezado de pgina que ancho total de elementos SPAN de mltiples columnas de informe 209006 ACC2000: Cmo controlar el nmero de registros impresos por pgina 210336 ACC2000: Funcin de ejemplo para determinar la pgina actual de un formulario 208979 ACC2000: Cmo imprimir un pie de grupo en una ubicacin especfica 231851 ACC2000: Microsoft Access 2000 Sample Queries Available en el Centro de descarga Para obtener ms informacin acerca de cmo crear mediante programacin un informe de Access, visite el siguiente Microsoft Developer Network (MSDN( sitio Web: http://msdn2.microsoft.com/en-us/library/aa188513(office.10(.aspx Volver al principio

http://support.microsoft.com/kb/812719/es[13/03/2012 07:10:47 p.m.]

Cmo crear mediante programacin una nueva columna en un informe de Access La informacin de este artculo se refiere a:
Volver al principio

Palabras clave: kbmt kbprogramming kbvba kbinfo kbhowto KB812719 KbMtes


Volver al principio Traduccin automtica IMPORTANTE: Este artculo ha sido traducido por un software de traduccin automtica de Microsoft (http://support.microsoft.com/gp/mtdetails( en lugar de un traductor humano. Microsoft le ofrece artculos traducidos por un traductor humano y artculos traducidos automticamente para que tenga acceso en su propio idioma a todos los artculos de nuestra base de conocimientos (Knowledge Base(. Sin embargo, los artculos traducidos automticamente pueden contener errores en el vocabulario, la sintaxis o la gramtica, como los que un extranjero podra cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisin, error o dao ocasionado por una mala traduccin del contenido o como consecuencia de su utilizacin por nuestros clientes. Microsoft suele actualizar el software de traduccin frecuentemente. Haga clic aqu para ver el artculo original (en ingls(: 812719 Volver al principio

Fue til esta informacin? S No Un poco Cunto esfuerzo ha dedicado personalmente para usar este artculo? Muy poco Poco Moderado Mucho Muchsimo Dganos las razones y qu podemos hacer para mejorar esta informacin

Enviar

Necesita ms ayuda?
Contactar con un profesional de soporte tcnico por correo electrnico, online o por telfono

Contrato de Servicios Administre su perfil Contctenos Condiciones de uso Marcas registradas Declaracin de privacidad
2012 Copyright

http://support.microsoft.com/kb/812719/es[13/03/2012 07:10:47 p.m.]

También podría gustarte