viernes, 21 de diciembre de 2012

Recursos JAVA

Recursos JAVA

Una funcion que te imprime lo que se ve en la pantalla: la funcion: "javascript:window.print()" llamado a traves de un href.

martes, 5 de junio de 2012

Generar un excel con visual basic

Bueno, esta ves quisiera que sepan un poco como realizar una coneccion al excel desde .NET, especiicamente usando el lenguaje visual basic.
Para esto deben tener una librería en su proyecto, la librería se llama Interop.Excel (se los colgare en una entrada en este blog)
Imaginence tener su aplicacion de escritorio en visual basic y en su interface tienen una tabla cococida como dataGridView. A la siguiente función  se le pasa un dataGridView y este lo baseara a un excel:



    Private Sub generarExcel(ByVal dataGridView As DataGridView)
        'creamos las 3 variables clasicas que sirven para trabajar con Excel
        Dim exApp As New Microsoft.Office.Interop.Excel.Application
        Dim exLibro As Microsoft.Office.Interop.Excel.Workbook
        Dim exHoja As Microsoft.Office.Interop.Excel.Worksheet
        'nos introducimos  a una excepcion por si tubieramos problemas y para dominarlas
        Try
            'Añadimos el Libro al programa, y la hoja al libro
            exLibro = exApp.Workbooks.Add
            exHoja = exLibro.Worksheets.Add()
            exHoja.Name = "DATOS"
            'ojo: DATOS es el nombre de la pestaña u hoja del libro excel

            ' ¿Cuantas columnas y cuantas filas?
            Dim NCol As Integer = dataGridView.ColumnCount
            Dim NRow As Integer = dataGridView.RowCount
            'Aqui recorremos todas las filas, y por cada fila todas las columnas y vamos escribiendo.
            For i As Integer = 1 To NCol
                exHoja.Cells.Item(1, i) = dataGridView.Columns(i - 1).Name.ToString
                'exHoja.Cells.Item(1, i).HorizontalAlignment = 3
            Next
            For Fila As Integer = 0 To NRow - 1
                For Col As Integer = 0 To NCol - 1
                    exHoja.Cells.Item(Fila + 2, Col + 1) = dataGridView.Rows(Fila).Cells(Col).Value
                Next
            Next
            'Titulo en negrita, Alineado al centro y que el tamaño de la columna se ajuste al texto
            exHoja.Rows.Item(1).Font.Bold = 1
            exHoja.Rows.Item(1).HorizontalAlignment = 3
            exHoja.Columns.AutoFit()

            'Aplicación visible
            exApp.Application.Visible = True

            exHoja = Nothing
            exLibro = Nothing
            exApp = Nothing

        Catch ex As Exception
            EstadoDeLaGeneracion = False
            MsgBox(ex.Message, MsgBoxStyle.Critical, "Error al exportar a Excel")
            'Return False
        End Try
    End Sub

espero que les sirva... bendiciones.

Atte.
Kenny Caceres