Datos hacia Excel

09/03/2006 - 18:58 por Guillermo | Informe spam
Estoy creando un reporte en Excel con unos datos que tengo en un dataset
Mi pregunta es la siguiente ¿Como puedo hacer para que las celdas del Excel
se ajusten automaticamente a tamaño de los caracteres del dato que se envia?
o ¡Que ajuste la columna a los ancho de la cabecera de los datos?

Preguntas similare

Leer las respuestas

#1 programadorvip
10/03/2006 - 15:57 | Informe spam
entra a http://es.geocities.com/romanticope...nuales.htm

y encontraras un link llamado sistemas de almacen de contenedores en net, y
ahi encontraras un codigo para exportar a excel
Respuesta Responder a este mensaje
#2 Luis Miguel Blanco
11/03/2006 - 11:01 | Informe spam
Hola Guillermo

Para conseguir este ajuste del ancho en una hoja de excel, una vez que hayas
rellenado la columna con los datos que necesitas, debes seleccionarla, y
aplicarle a dicha selección el método Autofit().

A continuación te adjunto un ejemplo de código en el que se carga un DataSet
con información, para posteriormente, crear por código una nueva sesión de
trabajo con Excel, añadir un libro, y recorrer el DataSet, rellenando dos
columnas de la hoja, a la que a una de ellas le aplicamos el ajuste de ancho.

'//////////////////////////////////////////////////
Imports Microsoft.Office.Interop
Imports System.Data.SqlClient

Public Class Form1
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button1.Click
Dim oConexion As SqlConnection = New SqlConnection()
oConexion.ConnectionString = "Integrated Security=SSPI;Persist
Security Info=False;" & _
"Data Source=localhost;Initial Catalog=Northwind"

Dim oComando As SqlCommand = New SqlCommand()
oComando.Connection = oConexion
oComando.CommandType = CommandType.Text
oComando.CommandText = "SELECT EmployeeID, (FirstName + ' ' +
LastName) AS Nombre FROM Employees"

Dim oAdaptador As SqlDataAdapter = New SqlDataAdapter()
oAdaptador.SelectCommand = oComando

Dim oDataSet As DataSet = New DataSet()
oConexion.Open()
oAdaptador.Fill(oDataSet, "Employees")
oConexion.Close()

Dim oEx As Excel.Application = New Excel.Application()
oEx.Visible = True
oEx.WindowState = Excel.XlWindowState.xlNormal
oEx.Workbooks.Add()

Dim nContador As Integer = 0
For Each oRow As DataRow In oDataSet.Tables("Employees").Rows
nContador += 1
oEx.Range("A" & nContador.ToString()).Select()
oEx.ActiveCell.FormulaR1C1 = oRow("EmployeeID")

oEx.Range("B" & nContador.ToString()).Select()
oEx.ActiveCell.FormulaR1C1 = oRow("Nombre")
Next

oEx.Columns("B:B").Select()
oEx.Selection.Columns.Autofit()
End Sub
End Class
'//////////////////////////////////////////////////

Espero que te sea de utilidad.
Un saludo
Luis Miguel Blanco
http://www.dotnetmania.com


"Guillermo" wrote:

Estoy creando un reporte en Excel con unos datos que tengo en un dataset
Mi pregunta es la siguiente ¿Como puedo hacer para que las celdas del Excel
se ajusten automaticamente a tamaño de los caracteres del dato que se envia?
o ¡Que ajuste la columna a los ancho de la cabecera de los datos?
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida