PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → xlsdocument et OLE "excel.application"
xlsdocument et OLE "excel.application"
Débuté par F.langagne, 19 juin 2017 13:50 - 2 réponses
Posté le 19 juin 2017 - 13:50
Bonjour,
Je rencontre un phénomène un peu étrange en voulant utiliser à la suite un code pour piloter une feuille excel avec les fonctions natives windev (xlsdocument) et un code pour piloter la même feuille excel mais qui lui utilise les fonctionnalités OLE "excel application".

Pour faire simple, si je met les 2 traitements à la suite sur le clic d'un bouton (xlsdocument en 1er) je m’aperçois que le traitement OLE est exécuté mais est sans effet.
J'ai tenté de séparer les traitements sur 2 boutons. 1er test je clic sur les boutons l'un après l'autre...même résultat, le traitement OLE est executé mais n'a aucun effet sur la feuille excel. 2ème test j'ai voulu utiliser executetraitement à la fin du code du 1er bouton pour lancer le code du 2eme bouton...même résultat...et enfin 3ème test je clic sur le 1er bouton, je ferme ma session de test, j'ouvre une nouvelle session de test et je clic sur le 2nd bouton et la mon code OLE s’exécute sans problème...

Est ce que quelqu'un aurait une piste avant que je ne me lance dans une transformation du code xsldocument en code OLE ?

Merci d'avance.

Bon dev à vous tous !!

Cordialement
Posté le 19 juin 2017 - 17:26
bonjour

la variable xlsdocument permet d'avoir un document excel en mémoire
on peut travailler un xlsdocument avec les ordres xls... , cela travaille sur le xlsdocument et pas sur la feuille en elle meme
pour le sauver il faut d'ailleurs utiliser xlssauve puis xlsferme

dans ce cas il faudrait utiliser les ordres ole aprés le xlsferme, cela utilise d'ailleurs une autre partie en mémoire
puis utiliser les ordres de sauvegarde et de fermeture ole à la fin du code ole + libérer l'objet ole

=> à tester

bon devs
Posté le 20 juin 2017 - 09:13
Bonjour,

Merci de votre réponse. Je ne faisais que xlssauve et le fait de rajouter xlsferme permet l’enchaînement des 2 méthodes.

Bon dev !!

Cordialement