Visual Basic - centralizar Datos en Excel

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

centralizar Datos en Excel

Publicado por Patricio Romero (6 intervenciones) el 02/08/2009 21:29:30
Estimados

Tengo un formulario en visual basic corriendo en 5 pc.a la vez, Este formulario recoje datos. Como puedo hacer para que esos datos al oprimir un boton se cargen inmediatamente sin toparse, en una planilla que centralize en una sola hoja de excel al mismo tiempo. este archivo excel estaria ubicado en otro pc distinto.

agradeciendo la ayuda .

atte.

Patricio Romero
Rancagua
Chile
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:centralizar Datos en Excel

Publicado por Eduardo (47 intervenciones) el 03/08/2009 16:06:01
Este es el código que utilizo para exportar a una hoja Excel
datos desde VisualBASIC:
No necesariamente debes utilizarlos a todos, te lo paso a modo de ejemplo.

'creamos el objeto de excel
Set ApExcel = CreateObject("Excel.application")


'añadimos un hoja nueva
ApExcel.WorkBooks.Add


'ApExcel.WorkBooks.Open "Dist2008Plantilla.xls" Abrimos una planilla existente


ApExcel.Cells(1, 1).Formula = "CODIGO"
ApExcel.Cells(1, 2).Formula = "DETALLE"
ApExcel.Cells(1, 3).Formula = "DOMICILIO"
ApExcel.Cells(1, 4).Formula = "TELEFONO"
ApExcel.Cells(1, 5).Formula = "CELULAR"
ApExcel.Cells(1, 6).Formula = "CONTACTO"
ApExcel.Cells(1, 7).Formula = "E-MAIL"
ApExcel.Cells(1, 8).Formula = "PAGINA WEB"


For i& = 0 To 100

ApExcel.Cells(i& + 2, 1).Formula = "DATO COLUMNA 1"
ApExcel.Cells(i& + 2, 2).Formula = "DATO COLUMNA 2"
ApExcel.Cells(i& + 2, 3).Formula = "DATO COLUMNA 3"
ApExcel.Cells(i& + 2, 4).Formula = "DATO COLUMNA 4"
ApExcel.Cells(i& + 2, 5).Formula = "DATO COLUMNA 5"
ApExcel.Cells(i& + 2, 6).Formula = "DATO COLUMNA 6"
ApExcel.Cells(i& + 2, 7).Formula = "DATO COLUMNA 7"
ApExcel.Cells(i& + 2, 8).Formula = "DATO COLUMNA 8"


' Este bloque es para insertar una foto en la celda I

ApExcel.Range("I" + Trim(Str(sw%))).Select
ApExcel.ActiveSheet.Pictures.Insert("Stock06Fotos" + Trim(trp.trcodigo) + ".jpg").Select
ApExcel.ActiveSheet.Application.CommandBars("Task Pane").Visible = False
ApExcel.Selection.ShapeRange.LockAspectRatio = msoTrue
ApExcel.Selection.ShapeRange.Height = 70.87
ApExcel.Selection.ShapeRange.Width = 73#
ApExcel.Selection.ShapeRange.Rotation = 0#
ApExcel.ActiveSheet.Rows(Trim(Str(sw%))).RowHeight = 71

Next


ApExcel.ActiveSheet.Range("A1:H100").Font.Size = 10
ApExcel.ActiveSheet.Range("A1:H100").Font.Name = "Courier New"
ApExcel.ActiveSheet.Range("A1:H100").Font.Bold = True


ApExcel.ActiveSheet.Range("A1:A" + Trim(Str(100))).HorizontalAlignment = 3

ApExcel.ActiveSheet.Range("A1:H" + Trim(Str(100))).Borders.LineStyle = 1

With ApExcel.ActiveSheet

.Range(.Cells(1, 1), .Cells(1, 8)).Interior.Color = vbCyan
.Range(.Cells(1, 1), .Cells(1, 8)).Font.Color = vbBlue

.Range("A1:G" + Trim(Str(100))).Select


.Rows("1").RowHeight = 20
' .Columns("A").ColumnWidth = 10
' .Columns("B").ColumnWidth = 40
' .Columns("C").ColumnWidth = 40
' .Columns("D").ColumnWidth = 18
' .Columns("E").ColumnWidth = 18
' .Columns("F").ColumnWidth = 20
' .Columns("G").ColumnWidth = 24
' .Columns("H").ColumnWidth = 40


.Columns("A:Z").AutoFit ' Ajuste el ancho de columna automaticamente


.Columns("C").NumberFormat = "#,##0.00"
.Columns("D").NumberFormat = "#,##0.00"
.Columns("E").NumberFormat = "#,##0.00"



.Columns("D:F").Hidden = True


End With



ApExcel.Range("G30").Select ' Pongo esta formula en la celda G30
ApExcel.ActiveCell.FormulaR1C1 = "=SUM(R[-3]C:R[-22]C)" ' Pongo en G30 la suma del rango G8 a G27


Close

ApExcel.Visible = True
Set ApExcel = Nothing
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:centralizar Datos en Excel

Publicado por Patricio Romero (6 intervenciones) el 03/08/2009 17:56:01
Muchas Gracias por tu ayda, era lo que necesitaba.

atte.

Patricio Romero
Rancagua
Chile
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar