lgarcia
27-01-2005, 14:49:36
Hola amigos del Club
Tengo el siguiente problema en un fichero que genero en Excel y es que parto de una plantilla que esta formateada pero cuando se crea el fichero final no coje el formato. Estudie varios hilos del Club relacionado con el tema pero utilizan una propiedad Range pero he probado varias veces y no doy pie con bola.
Mi codigo es el siguiente:
procedure TFormLoteVentas.SpeedButton2Click(Sender: TObject);
var
Excel, Libro: Variant;
i: integer;
Nombre, NombreNuevo: string;
begin
Excel:=CreateOleObject('Excel.Application');
Excel.Visible := False;
Nombre:= 'E:\Tiendas\Admon\ventastxt.xlt';
Excel.DisplayAlerts:= False;
Excel.WorkBooks.Add(1);
Excel.WorkBooks[1].WorkSheets[1].Name := 'Reporte';
Libro := Excel.WorkBooks[1].WorkSheets['Reporte'];
MostrarLote.First;
i:= 2;
Libro.Cells [1,1] := 'Codigo';
Libro.Cells [1,2] := 'Descripcion';
Libro.Cells [1,3] := 'Cantidad';
Libro.Cells [1,4] := 'Precio venta';
Libro.Cells [1,5] := 'Importe';
while not (MostrarLote.Eof) do
begin
Libro.Cells [i,1] := MostrarLotecodtrasval.Value;
Libro.Cells [i,2] := MostrarLotedescripcionplu.Value;
Libro.Cells [i,3] := MostrarLotecantidad.Value;
Libro.Cells [i,4] := MostrarLoteprecioventa.Value;
Libro.Cells [i,5] := MostrarLotemontoventa.Value;
inc(i);
MostrarLote.Next;
end;
NombreFichero;
NombreNuevo:= 'Venta ' + CBTienda.Text + ' ' + fechasalida;
Libro.SaveAs('E:\Tiendas\Admon\' + NombreNuevo);
ShowMessage(' El fichero ' + NombreNuevo + ' ha sido creado exitosamente');
Excel.Quit;
end;
Me gustaria saber como utilizar el Range en mo codigo
Muchas gracias
Luis Garcia
Tengo el siguiente problema en un fichero que genero en Excel y es que parto de una plantilla que esta formateada pero cuando se crea el fichero final no coje el formato. Estudie varios hilos del Club relacionado con el tema pero utilizan una propiedad Range pero he probado varias veces y no doy pie con bola.
Mi codigo es el siguiente:
procedure TFormLoteVentas.SpeedButton2Click(Sender: TObject);
var
Excel, Libro: Variant;
i: integer;
Nombre, NombreNuevo: string;
begin
Excel:=CreateOleObject('Excel.Application');
Excel.Visible := False;
Nombre:= 'E:\Tiendas\Admon\ventastxt.xlt';
Excel.DisplayAlerts:= False;
Excel.WorkBooks.Add(1);
Excel.WorkBooks[1].WorkSheets[1].Name := 'Reporte';
Libro := Excel.WorkBooks[1].WorkSheets['Reporte'];
MostrarLote.First;
i:= 2;
Libro.Cells [1,1] := 'Codigo';
Libro.Cells [1,2] := 'Descripcion';
Libro.Cells [1,3] := 'Cantidad';
Libro.Cells [1,4] := 'Precio venta';
Libro.Cells [1,5] := 'Importe';
while not (MostrarLote.Eof) do
begin
Libro.Cells [i,1] := MostrarLotecodtrasval.Value;
Libro.Cells [i,2] := MostrarLotedescripcionplu.Value;
Libro.Cells [i,3] := MostrarLotecantidad.Value;
Libro.Cells [i,4] := MostrarLoteprecioventa.Value;
Libro.Cells [i,5] := MostrarLotemontoventa.Value;
inc(i);
MostrarLote.Next;
end;
NombreFichero;
NombreNuevo:= 'Venta ' + CBTienda.Text + ' ' + fechasalida;
Libro.SaveAs('E:\Tiendas\Admon\' + NombreNuevo);
ShowMessage(' El fichero ' + NombreNuevo + ' ha sido creado exitosamente');
Excel.Quit;
end;
Me gustaria saber como utilizar el Range en mo codigo
Muchas gracias
Luis Garcia