Ver Mensaje Individual
  #6  
Antiguo 22-03-2005
fmonte fmonte is offline
Miembro
 
Registrado: ago 2004
Ubicación: Tandil
Posts: 67
Reputación: 20
fmonte Va por buen camino
Cita:
Empezado por Neftali
Creo que lo más fácil es que exportes el contenido del StringGrid a CSV (archivo separado por comas); Éstos ficheros se abren directamente desde Excel sin problemas (independientemente de la versión).

Ésta código guarda el contenido del StringGrid en el portapapeles, pero cambiando la última línea (1)/(2) se puede hacer que lo guarde en un fichero .CSV

Código Delphi [-]
var
i, j:Integer;
Str:String;
TS:TStrings;
begin
// Inicializamos
Str := '';
// Para cada línea de las selecciondas
for i := (StringGrid1.Selection.Top) to (StringGrid1.Selection.Bottom) do begin
// Si no es la 1ª linea, añadimos un salto de línea
if (i <> StringGrid1.Selection.Top) then begin
Str := Str + #13#10;
end;
// Para cada elemento dentro de la línea (celdas)
for j := 0 to (StringGrid1.Rows[i].Count - 1) do begin
// Si no es la primera celda, añadimos un separados
if (j <> 0) then begin
Str := Str + #9;
end;
// Construimos la cadena
Str := Str + StringGrid1.Rows[i].Strings[j];
end;
 
// (1) La guardamos en el clipboard (como texto)
Clipboard.AsText := Str
// (2) Para guardarloa fichero...
TS := TStringList.CReate()
TS.Text := Str;
TS.SAveToFile('c:\salida.csv');
TS.Free;
end;
excelente codigo, justo lo q estaba buscando! muchisimas gracias!
Responder Con Cita