Einzelnen Beitrag anzeigen

Andreas Leix

Registriert seit: 28. Apr 2008
31 Beiträge
 
#11

Re: Fehler bei Excel.workbooks.Open (...)

  Alt 6. Aug 2008, 12:33
Hallo,

ich wußte nicht, dass man mit Varianten solche "Schhweinereien" machen kann;
also Methoden aufrufen, die man eigentlich nicht kennt, ohne fixe Anzahl von Parametern etc...

Also erstmal vielen Dank an Euch !!

Jetzt hab ich aber dennoch ein paar Anmerkungen/ Fragen :

Folgender Code läßt sich nicht compilieren:

Zitat:
uses ExcelXP;
...
var Excel : TExcelApplication;
WB : _WorkBook;
x : OleVariant;
...
x := Excel.Workbooks.Open(strDokument);
das geht nur , wenn ich

Delphi-Quellcode:
var Excel : OleVariant ;
    Excel := CreateOleObject('Excel.Application');
    x := Excel.Workbooks.Open(strDokument);
...
schreibe.
Aber, hab ich den Kern des Tipps richtig verstanden ?

Man kann Ole-Varianten typisierten Variablen zuweisen
und dann auf die Methoden zugreifen ?

Geht das auch umgekehrt ?
also z.b. sowas :

Delphi-Quellcode:
var Excel: TExcelApplication ;
    WB,X: OleVariant;

begin
  Excel := TExcelApplication.Create ( nil );
  X:= Excel as OleVariant;
  WB:= X.WorkBooks.Open ('Blubber');
...
end;
Und wie stehts dann mit dem Freigeben der Referenzen aus ?


Noch eine andere Frage.
Wenn ich nur mit Varianten arbeite,
dann brauch ich auch das Unit ExceXP oder ähnliches nicht aufnehmen, oder ?

Dann geschieht das Hochfahren/ Ansprechen von excel rein durch ?
MyExcel := CreateOleObject('Excel.Application'); Gruß vom lernenden
Andreas
  Mit Zitat antworten Zitat