Du musst vorher schauen, ob Excel schon läuft.
Excel registriert sich selbst in der ROT (running object table) und das kann man mit
GetActiveOleObject abfragen.
Delphi-Quellcode:
try
// Versuche bestehende Excel-Anwendung aus der ROT zu holen
ExcelApplication:=GetActiveOleObject('Excel.Application');
except
// falls das fehlschlägt eine neue Excel-Anwendung starten
ExcelApplication:= CreateOleObject('Excel.Application');
end;