Classe Cexcel téléchargée sur ce site

Posté par gino le 3/10/2008 15:38:04
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 (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é ?
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

Cette contribution était de : http://old.wdforge.org/newbb/viewtopic.php?forum=14&topic_id=6015&post_id=24203