edraw-max-horizontal
Guía De Usuario
¿Qué hay de nuevo?
PRUÉBALO GRATIS
COMPRAR AHORA

Cómo puedes automatizar Excel e incrustarlo en VB 6

> Edraw: How-tos > Cómo puedes automatizar Excel e incrustarlo en VB 6
Publicado por Edraw | 2024-08-16 17:18:33
El componente Edraw Office Viewer es una solución sencilla y de confianza para que los desarrolladores incrusten la hoja de cálculo de Microsoft Excel en una aplicación vb.net.

A los desarrolladores de VB se les hace pan comido incrustar una hoja de cálculo de Excel existente en un formulario y luego automatizarlo, todo gracias al empleo del componente Edraw Office Viewer.

En el evento de carga del formulario, los desarrolladores pueden valerse del método Open para adjuntar los archivos *.xls, *.xlsx, *.xslm o *.cvs desde el disco duro o el servidor y abrirlos en un área del formulario. El archivo de Excel puede ser únicamente para lectura, edición completa o prohibido de guardar acorde a diferentes requisitos. Del mismo modo, los desarrolladores pueden automatizar su hoja de cálculo fácilmente con el componente de Excel.

Pulsa aquí para descargar el componente Office Viewer: Soporta VB6, proyecto vb.net para Word, Excel, PowerPoint, Visio y Project

pruébalo gratis5 MB

Cómo puedes incrustar el componente de Excel en un formulario VB 6

Usa nuestro artículo como una guía paso por paso para que sepas cómo incrustar la ventana de Excel en un formulario VB.

En primera instancia debes instalar el paquete del archivo officeviewer.ocx, en caso de no tenerlo.

Empieza con Visual Basic y créate un nuevo proyecto estándar. Form1 o formulario No. 1 se crea de forma predeterminada.

En el panel de la Caja de herramientas, haz clic derecho en la región en blanco. Procede pulsando el "Componente...".

vb 6 añadir componentes...

Debes fijar el componente Edraw Office Viewer, ubicado en el cuadro de diálogo emergente.

vb6 escoge componente

Presiona el botón de Aceptar.

Ahora podrás ver que el componente Office Viewer se agregó en la ventana de la barra de herramientas.

Barra de herramientas de EDOffice

Cámbiate a un formulario VB 6, luego agrégale el componente.

vb6 incrustar componente de Excel

El componente incorpora una buena cantidad de métodos, eventos y propiedades para que personalices la ventana de Excel.

El desarrollador tiene la opción de aprovechar el siguiente código para abrir un archivo de Excel en el evento Form_Load.

Private Sub Form_Load()
EDOffice1.OpenFileDialog
'EDOffice1.OpenWord "d:\test.xlsx"
'EDOffice1.Open "d:\test.xls", "Excel.Application"
End Sub

A propósito de que protejas la hoja de cálculo de Excel de la modificación por parte del usuario final, como desarrollador tienes que añadir el siguiente código en el evento DocumentOpened.

Private Sub EDOffice_DocumentOpened()
EDOffice1.ProtectDoc 1 ' XlProtectTypeNormal
End Sub

Existen ciertas formas envueltas de automatización de Excel disponibles para crear o modificar datos en dicha hoja de cálculos.

bool ExcelAddWorkSheet(long Index);
bool ExcelDeleteWorkSheet(long Index);
bool ExcelActivateWorkSheet(long Index);
long ExcelGetWorkSheetCount();
bool ExcelSetCellValue(long Column, long Row, BSTR Value);
BSTR ExcelGetCellValue(long Column, long Row);
bool ExcelSetRowHeight(long Row, double Height);
bool ExcelSetColumnWidth(long Column, double Width);
afx_msg bool ExcelDeleteRow(long Row);
bool ExcelDeleteColumn(long Column);
bool ExcelInsertRow(long Row);
bool ExcelInsertColumn(long Column);
bool ExcelInsertPageBreakInRow(long Row);
bool ExcelInsertPageBreakInColumn(long Column);
bool ExcelCopyToClipboard();
bool ExcelPasteStringToWorksheet(BSTR bstText);

Cómo puedes manipular Excel usando la automatización de Visual Basic

Presiona donde diga Proyecto y continúa haciéndole clic a Referencias. Te aparecerá el cuadro de diálogo de Referencias. Desliza hacia abajo en la lista hasta que halles la biblioteca de objetos de Microsoft Excel (Biblioteca de objetos de Microsoft Excel xx.x) y prosigue seleccionando el elemento para agregar una referencia a Excel. En caso de que la biblioteca de objetos adecuada para tu versión de Excel no aparece en la lista, ten la certeza de tener instalada correctamente tu versión de Excel.

Haz clic en Aceptar para cerrar el cuadro de diálogo Referencias.

Agrega un CommandButton a Form1.

En la ventana de código de Form1, inserta el siguiente código:

Private Sub Command1_Click()

Dim oXL As Excel.Application
Set oXL = EDOffice1.GetApplication()
Dim oWB As Excel.Workbook
Set oWB = EDOffice1.ActiveDocument()
Dim oSheet As Excel.Worksheet
Dim oRng As Excel.Range
Set oSheet = oWB.ActiveSheet
oSheet.Cells(1, 1).Value = "Primer nombre"
oSheet.Cells(1, 2).Value = "Apellido"
oSheet.Cells(1, 3).Value = "Nombre completo"
oSheet.Cells(1, 4).Value = "Salario"
' Format A1:D1 as bold, vertical alignment = center.
With oSheet.Range("A1", "D1")
.Font.Bold = True
.VerticalAlignment = xlVAlignCenter
End With
' Crea una matriz para establecer varios valores a la vez.
Dim saNames(5, 2) Como hilo
saNames(0, 0) = "John"
saNames(0, 1) = "Smith"
saNames(1, 0) = "Tom"
saNames(1, 1) = "Brown"
saNames(2, 0) = "Sue"
saNames(2, 1) = "Thomas"
saNames(3, 0) = "Jane"
saNames(3, 1) = "Jones"
saNames(4, 0) = "Adam"
saNames(4, 1) = "Johnson"
' Rellena A2:B6 con una matriz de valores (Nombres y Apellidos).
oSheet.Range("A2", "B6").Value = saNames
' Rellena C2:C6 con una fórmula relativa (=A2 & " " & B2).
Set oRng = oSheet.Range("C2", "C6")
oRng.Formula = "=A2 & "" "" & B2"
' Rellena D2:D6 con una fórmula (=RAND()*100000) y aplica el formato.
Set oRng = oSheet.Range("D2", "D6")
oRng.Formula = "=RAND()*100000"
oRng.NumberFormat = "$0.00"
' AutoFit columns A:D.
Set oRng = oSheet.Range("A1", "D1")
oRng.EntireColumn.AutoFit
oXL.UserControl = True
End Sub

Presiona F5 para ejecutar el proyecto. La automatización de Excel completará las celdas de Excel.

Automatización de Excel

Una cosa a tener en cuenta al automatizar Excel es la Grabadora de macros de Excel. Todavía está allí en Word 2007, pero está oculto en la barra de cinta del desarrollador. Un poco extraño, ya que la grabadora de macros siempre fue la forma más sencilla de automatizar Excel para el usuario promedio y, por lo general, no tienen la cinta de desarrollador visible.

Incrustación de MS Word en VB6 y haciendo automación de Word

Incrustación de MS Office en el programa ASP.NET

Incrustación de proyecto MS

Incrustación de Visio

Una manera fácil de incrustar Excel en una página web

MS PowerPoint incrustado

Una navaja suiza para todas tus necesidades de diagramación

EdrawMax es la herramienta de diagramación más fácil de usar que sirve para todos tus propósitos. Proporciona un espacio de trabajo para crear más de 280 tipos de diagramas, incluyendo diagramas de flujo, diagramas de Ishikawa, diagramas UML, planos de piso y más. Acelera la comprensión e impulsa la innovación en múltiples plataformas. ¡Pruébala gratis ahora!