Tengo un ejemplo completo (II)
Buenos días.
Tengo un ejemplo completo, pero como no me lo deja insertar todo de una vez te lo divido en dos
---------------INICIO SEGUNDA PARTE -------------
//Accionistas
if InfoConcesionAccionistas.FindFirst
Then
Begin
InfoConcesionAccionistas.First;
nome_columna_1:= DameColumnaExcel(DM.ConcesionPlantillaXLSColumnaIni+2);
nome_columna_2:= DameColumnaExcel(DM.ConcesionPlantillaXLSColumnaIni+2+6);
fila:= DM.ConcesionPlantillaXLSFilaIni+5;
while not InfoConcesionAccionistas.Eof do
Begin
Excel.Sheets[2].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].RowHeight:= Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].RowHeight*2;
Excel.Sheets[2].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].WrapText:= true;
try
Excel.Sheets[2].Cells.Range[nome_columna_1+IntToStr(fila),nome_columna_2+IntToStr(Fila)].Merge;
except
End;
Excel.Sheets[2].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+1].Value:= InfoConcesionAccionistas.FieldByName('porcentaje').AsString;
Excel.Sheets[2].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].Value:= InfoConcesionAccionistas.FieldByName('Accionista').AsString;
fila:= fila+1;
InfoConcesionAccionistas.Next;
End;
End;
//Incidencias
if InfoConcesionIncidencias.FindFirst
Then
Begin
InfoConcesionIncidencias.First;
fila:= DM.ConcesionPlantillaXLSFilaIni+5;
nome_columna_1:= DameColumnaExcel(DM.ConcesionPlantillaXLSColumnaIni+2);
nome_columna_2:= DameColumnaExcel(DM.ConcesionPlantillaXLSColumnaIni+2+6);
while not InfoConcesionIncidencias.Eof do
Begin
Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].RowHeight:= Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].RowHeight*3;
Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].WrapText:= true;
try
Excel.Sheets[3].Cells.Range[nome_columna_1+IntToStr(fila),nome_columna_2+IntToStr(Fila)].Merge;
except
End;
Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+1].Value:= InfoConcesionIncidencias.FieldByName('fecha').AsString;
Excel.Sheets[3].Cells[fila, DM.ConcesionPlantillaXLSColumnaIni+2].Value:= InfoConcesionIncidencias.FieldByName('descripcion').AsString;
fila:= fila+1;
InfoConcesionIncidencias.Next;
End;
End;
InfoConcesion.Next;
End;
except
Excel.Quit;
showmessage('No se pudo crear el Objecto Excel.');
InfoConcesion.Close;
raise;
end;
if creado
Then Excel.ActiveWorkbook.saveas(Arquivo);
Excel.quit;
End
Else showmessage('No se pudo realizar la exportación a un fichero Excel'+#13+'porque no se ha indicado un nombre para el fichero de destino');
End
Else showmessage('No se pudo realizar la exportación a un fichero Excel'+#13+'porque no se han encontrado datos.');
InfoConcesionDatTecnicos.Close;
InfoConcesionIncidencias.Close;
InfoConcesionAccionistas.Close;
InfoConcesion.Close;
end;
---------------FIN SEGUNDA PARTE -------------
Un saludo
Ramiro
|