Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Seitenumbruch in Excel mit Delphi / IDispatch Problem (https://www.delphipraxis.net/48282-seitenumbruch-excel-mit-delphi-idispatch-problem.html)

Narayana 23. Jun 2005 06:45


Seitenumbruch in Excel mit Delphi / IDispatch Problem
 
Hi,

ich suche die Syntax von Delphi um einen Zeilenumbruch in Excel einzufügen.

(Meine Verbindung zu Excel läuft über die ExcelApplication, ExcelWorksheet und ExcelWorkbook Komponenten)

Ich habe um auf die Lösung zu kommen einen Maktro in Excel angelegt, der Folgendes sagt:

Zitat:

Zitat von Excel Makro
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=ActiveCell

Nun versuche ich das in Delphi umzusetzen:

Delphi-Quellcode:
var
  activeSheet : _worksheet;
begin
  activeSheet := ExcelApplication.activeSheet as _worksheet;
  activeSheet.HPageBreaks.Add(...)
end;
Die Add Funktion erwartet einen IDispatch... :shock:
Kann mir jemand sagen, was das ist? Was muss denn da für ein Wert rein? der nimmt weder Buchstaben noch Zahlen...
Was muss ich da sinnvollerweise reinschreiben, damit ich kontrollierte Seitenumbrüche machen kann?

Dabei ist mir egal, ob ich den Umbruch bei der aktiven Zeile, oder nach Angabe der Zeile mache.

Danke im Vorraus :-D

//edit: Titel geändert

omata 23. Jun 2005 17:39

Re: Seitenumbruch in Excel mit Delphi / IDispatch Problem
 
Moin,

versuch mal folgendes...

Delphi-Quellcode:
procedure TMain.ButtonClick(Sender: TObject);
var Excel:TExcelApplication;
    LCID:integer;
    Workbook:_Workbook;
    Sheet:Variant;
begin
  Excel:=TExcelApplication.Create(Self);
  try
    LCID:=GetUserDefaultLCID;
    Excel.Connect;
    Excel.Visible[LCID] := true;
    Workbook:=Excel.Workbooks.Add(EmptyParam, LCID);
    Sheet:=Workbook.ActiveSheet;
    Sheet.HPageBreaks.Add(IDispatch(Excel.Cells.Range['A25', EmptyParam]));
  finally
    Excel.Disconnect;
    Excel.free;
  end;
end;
MfG
Thorsten


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:02 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz