Passage des paramètres utils à une fonction/procedures [Résolu]

Messages postés
2
Date d'inscription
mercredi 17 mars 2004
Statut
Membre
Dernière intervention
5 mars 2015
- - Dernière réponse : korgis
Messages postés
420
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
6 mai 2019
- 7 mars 2015 à 17:48
Bonjour,

J'ai récupéré du code ou seuls les paramètres utilisés étaient passé a l'appel de la fonction. J'ai vu cela dans un source OLE Excel et la syntaxe est la suivante:

Ex.ActiveWorkBook.SaveAs(Filename := SaveAsFileName, FileFormat := 56);

Filename et FileFormat sont bien des paramètres du SaveAS mais lorsque je compile l'exemple sous Delphi 7 le compilateur rejette l'instruction avec le message:

identificateur non déclaré : 'Filename'

Existe-t-il un directive de compilation permettant cette syntaxe ?

Si quelqu'un connait la solution je serais bien content de la découvrir...

Merci d'avance.
Michel
Afficher la suite 

4 réponses

Messages postés
1293
Date d'inscription
mardi 28 octobre 2003
Statut
Contributeur
Dernière intervention
3 juillet 2015
10
0
Merci
Salut,

Tu peux poster la procédure complète ? (ou l'unité même...)

Simon
Commenter la réponse de sp40
Messages postés
248
Date d'inscription
lundi 27 octobre 2003
Statut
Membre
Dernière intervention
4 mars 2016
5
0
Merci
Salut,
Le SaveAs d'un ActiveWorkBook ressemble plus à ceci sous D7:
procedure SaveAs(Filename: OleVariant; FileFormat: OleVariant; etc...);

Exemple d'utilisation
Ex.ActiveWorkBook.SaveAs(SaveAsFileName, 56, etc...); 

@+
Commenter la réponse de cs_yanb
Messages postés
675
Date d'inscription
jeudi 17 avril 2008
Statut
Membre
Dernière intervention
19 février 2019
10
0
Merci
Salut
Dans tous les cas la syntaxe delphi est mauvaise
au minimun cela doit ressemble à celà :
Ex.ActiveWorkBook.SaveAs(Filename := SaveAsFileName, FileFormat := 56); devient :
Ex.ActiveWorkBook.SaveAs(Filename :string = SaveAsFileName, FileFormat :integer = 56);

pas de := dans le passage de paramètres !
Commenter la réponse de dubois77
Messages postés
420
Date d'inscription
samedi 17 mai 2003
Statut
Membre
Dernière intervention
6 mai 2019
15
0
Merci
Salut,

Le 2ème paramètre est le format par défaut, il n'est donc pas forcément utile de le préciser.

La syntaxe correcte est celle-ci, 'C:\MonFichier.xls' étant le fichier de destination de la sauvegarde du classeur actif :

var
  FileName: string;
begin
  FileName := 'C:\MonFichier.xls'; // fichier que tu veux obtenir
  Ex.ActiveWorkBook.SaveAs(Filename);
end;


C'est tout simple...
Commenter la réponse de korgis