Vielen Dank marabu,
ich poste hier mal meine Funktion, die die Anzahl der Zeilen bis zum Seitenumbruch zurückgibt:
Delphi-Quellcode:
function GetFreeLines(WS : _WorkSheet; J : Integer) : Integer;
var
NextPB : Excel97.Range;
CurrPos : Integer;
CurrCount : Integer;
k : Integer;
begin
CurrPos := J;
CurrCount := WS.HPageBreaks.Count;
// Zeilen befüllen, damit Count hochgezählt wird
while (WS.HPageBreaks.Count = CurrCount) do
begin
Inc(J);
WS.Cells.Item[J,1].Select;
WS.Cells.Item[J,1].Value := '0';
end; (* of while *)
NextPB := WS.HPageBreaks.Item[WS.HPageBreaks.Count].Location;
// Zeilen wieder leeren
for k := j downto CurrPos do
begin
WS.Cells.Item[k,1].Select;
WS.Cells.Item[k,1].Value := '';
end; (* of for *)
result := NextPB.Row - WS.Cells.Item[CurrPos,1].Row;
end; (* of GetFreeLines *)
Mit J wird die aktuelle Position überbegen.
Man muss wohl was in die Zellen reinschreiben, damit der automatische Zeilenumbruch aktiv wird, mit leeren Zellen hat es bei mir nicht funktioniert.
MFG
Lorenz
Ich habe viel von meinem Geld für Alkohol, Weiber und schnelle Autos ausgegeben ... Den Rest habe ich einfach verpraßt.
George Best - 22.05.1946 - 25.11.2005 - nordirischer Fußballspieler