Bonjour.
J'ai un programme qui se connecte à un fichier Excel ouvert via TExcelApplication et qui crée une worksheet.
Quand j'ai le volet de visualisation de windows d'activé, que "prévisualise" mon classeur, puis que j'ouvre le classeur , le programme me retourne l'erreur suivante : 'Erreur OLE 800A03EC'
Dans les process, j'ai 2 instances d'excel, dont une qui à comme argument : "Embedding"
Je penses que Delphi essaye de se connecter à la mauvaise instance.
Comment faire pour se connecter à la bonne ?
Voici le code minimaliste qui reproduit le problème :
Des images pour mieux comprendre de quoi je parle :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 procedure TForm1.Button1Click( Sender : TObject ); var Excel : TExcelApplication; begin try Excel := TExcelApplication.Create( Self ); Excel.ConnectKind := ckRunningInstance; Excel.Connect; Excel.Workbooks.Add( xlWBATWorksheet, 0 ); except on E : Exception do begin ShowMessage( E.Message ); end; end; end; end.
Merci d'avance.
Tristan
Partager