RE:Gracias alguien mas????
Esto lo copié de mensajes anteriores... yo lo puse.. a ver si acaso te sirve de algo...
Dim objExcel As excel.Application
Set objExcel = New excel.Application
objExcel.Visible = False ' esto es para poner visible o invisible la hoja de excel...
With objExcel.ActiveSheet
For i=1 to Rs.RecordCount
rs.absoluteposition=i
.Cells(1, 1) = rs("campo1") ' renglon-columna ... no recuerdo bien esto..
.Cells(2, 1) = rs("campo2")
.Cells(3, 1) = rs("campo3")
' dependiendo de los campos
Next i
End With
Lo que quieras hacer en excel desde Visual solo es cosa que hagas una macro de excel... la edites y luego adaptes el código al tuyo... por ejemplo...:
.Range(.Cells(12, 1), .Cells(12, 3)).HorizontalAlignment = xlCenter
.Range(.Cells(12, 1), .Cells(12, 3)).VerticalAlignment = xlBottom
.Range(.Cells(12, 1), .Cells(12, 3)).WrapText = True
.Range(.Cells(12, 1), .Cells(12, 3)).Orientation = 0
.Range(.Cells(12, 1), .Cells(12, 3)).AddIndent = False
.Range(.Cells(12, 1), .Cells(12, 3)).IndentLevel = 0
.Range(.Cells(12, 1), .Cells(12, 3)).ShrinkToFit = False
.Range(.Cells(12, 1), .Cells(12, 3)).ReadingOrder = xlContext
.Range(.Cells(12, 1), .Cells(12, 3)).MergeCells = False
.Range(.Cells(12, 1), .Cells(12, 3)).Font.Size = 6
.Range(.Cells(12, 1), .Cells(12, 3)).Font.Bold = True
.Range(.Cells(12, 1), .Cells(12, 3)).Font.Italic = True
.Range(.Cells(12, 1), .Cells(12, 3)).Font.Name = "Microsoft Sans Serif"
.Range(.Cells(12, 1), .Cells(12, 3)).Borders.LineStyle = xlContinuous
Esto pone un conjunto de celdas al centro, la condicion wraptext en verdadero. el tamaño de letra 6, el tipo Microsoft San Serif, la pone con negritas e itálicas, el borde lo pone sencillo, entre otras cosas...
objExcel.Sheets("Hoja1").Name = "Nuevo Nombre"
Esto le cambia de nombre a la hoja
objExcel.ActiveSheet.PageSetup.Orientation = xlLandscape
objExcel.ActiveSheet.PageSetup.LeftMargin = Application.InchesToPoints(0.78740157480315)
objExcel.ActiveSheet.PageSetup.RightMargin = Application.InchesToPoints(0.78740157480315)
objExcel.ActiveSheet.PageSetup.TopMargin = Application.InchesToPoints(0.393700787401575)
objExcel.ActiveSheet.PageSetup.BottomMargin = Application.InchesToPoints(0.393700787401575)
objExcel.ActiveSheet.PageSetup.PaperSize = xlPaperLetter
objExcel.ActiveSheet.PageSetup.PrintTitleRows = "$1:$13"
objExcel.ActiveWindow.DisplayGridlines = False
Esto configura la hoja en forma apaisada, establece márgenes, elige la hoja tamaño carta, define un encabezado y le quita las "rayitas" al excel...
Lo que si no sé es como cerrar la aplicación... es cosa de que ejecutes macros y más o menos le encuentres como hacer eso...
Espero esto te sea de utilidad.. si acaso tienes dudas... no dudes en preguntarlo...
SALUDOS