Bonjour
J'ai le problème suivant avec la méthode CL_Enr
Erreur à la ligne 9 du traitement Méthode CL_Enr.
L'objet sur lequel on accède au membre saved n'est pas un objet Automation.
Je ne vois pas ou se trouve la connerie
![](http://old.wdforge.org/uploads/icon_confused.gif)
(surtout que je ne maitrise pas vraiment la classe…)
Mon code est le suivant
MonXl=allouer un cExcel(SysFenTitre(Handle()))
clImport est un objet cExcel(F_Envoi_Ligue)
//clImport:Visible(vrai)//rend invisible EXCEL
FichierImporté est un entier
FichierImporté=xlsOuvre(fRepExe()+"\Bordereau Licences.xls")
SI FichierImporté<0 ALORS
DélaiAvantFermeture(500)
Info("Impossible d'ouvrir le fichier spécifié")
FIN
HLitPremier(T_Association)
NomAsso est une chaîne
NuméroAsso est une chaîne
NomAsso=T_Association.Nom_Asso
NuméroAsso=T_Association.Numéro_Asso
clImport:Cell_EcritLC(12,3,NomAsso)
clImport:Cell_EcritLC(14,3,NuméroAsso)
clImport:CL_Enr(fRepExe()+"\B1.xls")
Le code de la méthode est
// Enregistre un classeur
PROCEDURE cExcel::Cl_Enr(sFicEnr)
// L'appel à cette procédure est du type :
// sFicEnr Fichier à ouvrir (chemin compris)
// Retourne une confirmation de l'enregistrement
SI PAS :xlActif ALORS RENVOYER Faux
SI sFicEnr="" ALORS RENVOYER Faux
// Le fichier en cours a-t-il été enregistré ?
![](http://old.wdforge.org/uploads/icon_mad.gif)
c'est là que ça plante
SI :oXL>>ActiveWorkbook>>saved = OLEVrai ALORS RENVOYER Oui
// non : évalue la présence du fichier sur disque
SI fRep(sFicEnr)<>"" ALORS
// trouvé : enregistre une copie = pas de confirmation excel
QUAND EXCEPTION RENVOYER Faux
:oXL>>ActiveWorkBook>>SaveCopyAs(sFicEnr)
SINON
// pas trouvé : enregistrement
SI Majuscule(Gauche(:oXL>>ActiveWorkBook>>Name,5))="CLASS" OU...
Majuscule(:oXL>>ActiveWorkBook>>FullName)<>Majuscule(sFicEnr) OU Majuscule((:oXL>>ActiveWorkBook>>Name))="BORDEREAU LICENCES" ALORS
// Nouveau fichier ou nom <>
QUAND EXCEPTION RENVOYER Faux
:oXL>>ActiveWorkBook>>SaveAs(sFicEnr,1)
SINON
// Fichier déja nommé
QUAND EXCEPTION RENVOYER Faux
:oXL>>ActiveWorkBook>>Save()
FIN
FIN
// Bascule l'état d'enregistrement dans Excel
:oXL>>ActiveWorkBook>>Saved=OLEVrai
RENVOYER Vrai