Problème de paramétrage Excel

Résolu
Excalibur_56 Messages postés 43 Date d'inscription jeudi 14 février 2019 Statut Membre Dernière intervention 26 août 2022 - 23 juin 2020 à 08:41
Excalibur_56 Messages postés 43 Date d'inscription jeudi 14 février 2019 Statut Membre Dernière intervention 26 août 2022 - 23 juin 2020 à 13:19
Bonjour à tous;
J'utilise Excel avec Delphi, j'utilisais un programme qui fonctionnait très bien.
Mais j'ai eu un problème informatique, et j'ai dû ré-installé Windows,.
Depuis mon programme m'affiche un message d'erreur "EOleSysError".
Il à fallut que je cherche le nombre exacte de "EmptyParam," car, la connexion ne se faisait plus.
Avant il fallait en mettre 14 "EmptyParam", et maintenant, il m'en faut 12 depuis que j'ai ré-installé Windows 7 Pro 64 bits.

   ExcelApplication.Workbooks.Open(Filename,
 EmptyParam , EmptyParam , EmptyParam , EmptyParam ,
 EmptyParam , EmptyParam , EmptyParam , EmptyParam ,
 EmptyParam , EmptyParam , EmptyParam , EmptyParam , (LCID));


Pareil pour sauvegarder mon fichier:
ExcelApp.ActiveWorkbook.SaveAs(Fichier,
EmptyParam, EmptyParam,
EmptyParam, EmptyParam, EmptyParam,
xlNoChange, EmptyParam, EmptyParam,
EmptyParam, EmptyParam, (LCID));

Avant, il me fallait 12 "EmptyParam", et là, en plus il à fallut que je mette "xlNoChange"

Donc, si je dois un jour ré-installer Windows, il faudra ENCORE
que je re modifie mon programme ???.

Y à t-il un moyen de connaitre le bon paramétrage ??. Je vais pas rechanger à chaque fois !!!!
En vous remerciant d'avance.
Bien cordialement à tous.

2 réponses

japee Messages postés 1727 Date d'inscription vendredi 27 décembre 2002 Statut Modérateur Dernière intervention 6 novembre 2021 8
23 juin 2020 à 10:22
Salut,

Essaye sans passer de paramètres, ainsi :

ExcelApplication.Workbooks.Open(FileName);


et pareil pour sauvegarder :

ExcelApplication.Workbooks.SaveAs(FileName); 


--
0
Excalibur_56 Messages postés 43 Date d'inscription jeudi 14 février 2019 Statut Membre Dernière intervention 26 août 2022
23 juin 2020 à 13:19
Bonjour Japee;
Merci pour ta réponse,
je vais essayer, J'utilise le composant :
ExcelApplication: TExcelApplication;

Ouiii , MERCiiiiii,
je viens de refaire ça marche,
avant ça ne marchait plus (???)
voici le code d'un ancien prog:
;
  OleApplication, OleWorkBook: Variant;  

procedure TForm1.FormCreate(Sender: TObject);
begin
  OleApplication := CreateOleObject('Excel.Application');  OleWorkBook:=OleApplication.Workbooks.open(ExtractFilePath(Application.ExeName)+'StrinGrid Excel.xlsx');
  OleApplication.visible:= True;
  OleApplication.WorkSheets.Item['Feuil1'].Activate;

Je comprends pas??, j'avais dû refaire mon programme avec le TExelApplication, car, ça ne fonctionnait plus de cette façon, et maintenant, ça fonctionne de nouveau (??),
à rien comprendre?
Par contre;
ceci ne fonctionne pas avec le TExcelApplication
var
Fichier: string;
begin
Fichier:= ExtractFilePath(Application.ExeName)+'ExcelTest1.xlsx';
ExcelApp.ActiveWorkbook.SaveAs(Fichier);

erreur de compilation "pas assez de paramètres"

Je n'ai trouvé aucun tutos sur le paramétrage Excel, selon la version utilisée.
Uniquement le code avec les emptyparam.
Il doit y avoir une mise à jour de Microsoft, qui doit causer cette différence ??.

Un grand merci à toi pour ta réponse,
Sais-tu où je pourrais trouver un tuto sur le composant TExcelApplication ???,
J'aimerais bien comprendre comment fonctionne ce composant;

Bien cordialement
bon codding
0