Thema: Delphi StringGrid & Excel

Einzelnen Beitrag anzeigen

Benutzerbild von Chemiker
Chemiker

Registriert seit: 14. Aug 2005
1.859 Beiträge
 
Delphi 11 Alexandria
 
#23

Re: StringGrid & Excel

  Alt 2. Mär 2008, 15:03
Hallo BarcB,

ich kann grenzgaenger nur beipflichten ich würde so etwas, ohne Excel machen mit den Biff – Format.

Zitat:
Chemiker, wie mach Form2 die Excel Variable bekannt?
Du kannst z.B. die Excel – Variable im MainForm (Hauptformular) als globale Variable hinterlegen, dann ist die Variable Excel auch in andere Units bekannt.

Zitat:
Und noch ne Frage.
Wie kopiert man ein Sheet innerhalb eines Workbooks?
Wenn ich eins kopieren will erstellt er immer ein neues Workbook. Sad
Normalerweise wird es im Forum gerne gesehen, dass für jede Frage ein eigener Beitrag erstellt wird.

Etwas Hintergrund – Information:

Das oberste Objekt der Hierarchie in Excel ist die Excel – Applikation. Eine Ebene tiefer sind die Workbooks (Arbeitsmappen), dann folgt wieder eine Stufe tiefer die Sheets (Tabellenblätter) usw.
Abhängig von der verwendeten Methode (z.B. .Add) kannst Du ein Diagramm, -Makro- oder Tabellenblatt oder nur Tabellenblätter (Worksheets- Auflistung) hinzufügen.
Arbeitsmappen müssen in der Regel explizit angesprochen werden, wenn mehrere davon offen sind und nur eine bestimmte davon etwas ausführen soll.

Das bedeutet in Deinem Fall, dass eine OleVariabel verwendet wird, um die spezielle Arbeitsmappe (Workbook) anzusprechen.

WB:= Excel.Workbooks.Open (ExcelMappDateiName); // WB= Workbook als OleVariabel WB ist jetzt die Arbeitsmappe mit der Du was ausführen willst.

WB.Worksheets[1].copy (Before:=WB.Worksheets[1]); Das erste Tabellenblatt in der Arbeitsmappe die zuvor geladen worden ist, wird kopiert und die Kopie wird vor dem Original Arbeitsblatt eingetragen.

WB.ActiveSheet.Name := 'Kopie'; Das kopierte Arbeitsblatt ist jetzt aktiv und wird mit einem Namen versehen. Das kopierte Arbeitsblatt hat den Name ‚Kopie’.

Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.
  Mit Zitat antworten Zitat