Se desea generar documentos excel con mayores detalles de look y funcionalidad desde Genexus.
Algunos de los requerimientos son: colorear celdas, definir bordes de las celdas, insertar filas, insertar fórmulas....
Dado que las funciones propias de Genexus no lo permiten, una alternativa para lograrlo, es incluir macros que realicen las funciones deseadas e invocarlas pasándo los parámetros necesarios, ej:
&ExcelDocument.RunMacro( 'InsertarFila',2 )
&ExcelDocument.RunMacro( 'ColoresCelda',2,5,2 )
Etc...
Este es el código fuente del modulo Visual Basic del archivo excel del cual se invocarán las macros.
Sub InsertarFila(Fila As Integer)
Row = Trim(Str(Fila)) + ":" + Trim(Str(Fila))
Rows(Row).Select
Selection.Insert Shift:=xlDown, copyOrigin:=xlFormatFromRightOrBelow
End Sub
Sub ColoresCelda(RangoCeldas As String, ColorFondo As Integer, ColorTexto As Integer)
' FormatoCelda Macro
'Selecciono Celda
Range(RangoCeldas).Select
'Color Fondo
With Selection.Interior
.ColorIndex = ColorFondo
.Pattern = xlSolid
End With
'Color Texto
Selection.Font.ColorIndex = ColorTexto
End Sub
Sub BordesCelda(RangoCeldas As String, TipoBorde As Integer)
If TipoBorde = 0 Then
'Bordes transparentes
Range(RangoCeldas).Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
Selection.Borders(xlEdgeLeft).LineStyle = xlNone
Selection.Borders(xlEdgeTop).LineStyle = xlNone
Selection.Borders(xlEdgeBottom).LineStyle = xlNone
Selection.Borders(xlEdgeRight).LineStyle = xlNone
Selection.Borders(xlInsideVertical).LineStyle = xlNone
Selection.Borders(xlInsideHorizontal).LineStyle = xlNone
End If
If TipoBorde = 1 Then
'Bordes linea Fina
Range(RangoCeldas).Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End If
If TipoBorde = 2 Then
'Bordes linea gruesa
Range(RangoCeldas).Select
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlMedium
.ColorIndex = xlAutomatic
End With
End If
End Sub
Sub BorrarFila(Fila As Integer)
Row = Trim(Str(Fila)) + ":" + Trim(Str(Fila))
Rows(Row).Select
Selection.Delete
End Sub
Servicios Profesionales (consultoras que apoyan el proyecto Mundo Support GX) |
Para informarse sobre las soluciones y servicios en: Click Aquí o escriba a mundosupport@gmail.com. |
||||||||||
![]() |
![]() |
![]() |
![]() |
![]() |
Bienvenido a Mundo Support
Te damos la bienvenida a Mundo Support GX!!!!!
Como usuario visitante podrás consultar libremente los artículos y comentarios publicados; además de escribir comentarios que aporten y enriquezcan a los artículos.
Si deseas redactar artículos, entradas o consultas te invitamos a que nos escribas a mundosupport@gmail.com y recibirás un correo invitándote a ser redactor contribuyente.
Gracias y esperamos contribuir en tu camino por el mundo Genexus y la programación.
Como usuario visitante podrás consultar libremente los artículos y comentarios publicados; además de escribir comentarios que aporten y enriquezcan a los artículos.
Si deseas redactar artículos, entradas o consultas te invitamos a que nos escribas a mundosupport@gmail.com y recibirás un correo invitándote a ser redactor contribuyente.
Gracias y esperamos contribuir en tu camino por el mundo Genexus y la programación.
lunes, 6 de octubre de 2008
XLS.Varios - Ampliar funciones en creación de documentos excel
Publicado por
.
en
lunes, octubre 06, 2008
Etiquetas: exceldocument, fórmulas, xls
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario