AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Seitenumbruch in Excel mit Delphi / IDispatch Problem
Thema durchsuchen
Ansicht
Themen-Optionen

Seitenumbruch in Excel mit Delphi / IDispatch Problem

Ein Thema von Narayana · begonnen am 23. Jun 2005 · letzter Beitrag vom 23. Jun 2005
Antwort Antwort
Narayana
(Gast)

n/a Beiträge
 
#1

Seitenumbruch in Excel mit Delphi / IDispatch Problem

  Alt 23. Jun 2005, 07:45
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 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...
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

//edit: Titel geändert
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: Seitenumbruch in Excel mit Delphi / IDispatch Problem

  Alt 23. Jun 2005, 18:39
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
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:15 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