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