PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 2024 → Problème de manipulation word avec windev
Problème de manipulation word avec windev
Débuté par Bossou Eric, 12 aoû. 2019 18:29 - 4 réponses
Posté le 12 août 2019 - 18:29
Bonjour,
je souhaite ouvrir un fichier word (formulaire) pour remplir des signets, puis l'enregistrer avec un autre nom et avoir la possibilité de l'imprimer (au choix).
mais depuis l'ouverture, je bugues, car le fichier s'ouvre en lecture seule avec le message suivant :



Voici mes premières lignes de code sur le bouton:
// A REVOIR
MonDoc est une chaîne = "C:\Mes projets\Evasan973\Documents\Evasan.doc"
Word est un objet OLE "Word.application"
Word>>Visible = Faux
Word>>Documents>>Open(MonDoc) //Fichier Word
Word>>DisplayAlerts=Faux
SI Word>>ActiveDocument>>ProtecttionType=2 ALORS
Word>>ActiveDocument>>unprotect("yvaneric")
FIN
Word>>ActiveDocument>>Bookmarks ("M1MED")>>Select
Word>>selection>>Typetext("JOSEPH Eric")


Pas la peine de m'envoyer vers l'aide de WD "Manipuler Word", je l'ai regardé ce n'est pas clair pour moi. (pas assé détailler)
Merci pour votre aide
E.B.
Membre enregistré
1 304 messages
Popularité : +47 (51 votes)
Posté le 12 août 2019 - 23:26
Salut Eric,

Quel version de Windev possèdes-tu ?
Si tu as une version 22 ou supérieur il y a les fonctions Docxxxx() qui gère directement les fichier Word sans passer par OLE
Regarde l'aide ici: https://doc.pcsoft.fr/fr-FR/?1000022461

A+
Bon Dev
Daryl

--
http://www.concept4u2.com
Membre enregistré
3 876 messages
Popularité : +227 (347 votes)
Posté le 13 août 2019 - 07:43
Bonjour,
Il est possible que Word ait planté. Dans ce cas, le fichier (caché) ~$NomDoc.docx n'a pas été supprimé par l'application. Dans ce cas, le fichier est considéré comme ouvert.

--
Il y a peut être plus simple, mais, ça tourne
Membre enregistré
324 messages
Popularité : +21 (51 votes)
Posté le 13 août 2019 - 09:56
- Les liens OLE pour manipuler des doc / docx sont dépréciés par windows, il ne faut plus passer par là, migrer vers le composant interne de traitement de texte de windev si possible ^^

- Pour l'impression en elle même
Pour imprimer un documents "DOCX" on utilisera plutôt les fonctions lanceappli ou lanceappliassocié avec le verbe "Print"

- Enfin pour modifier le contenu d'un docx, à condition de maitriser la structure n'est pas complexe, un docx n'est dans le fond qu'une archive ZIP contenant plusieurs XML lisible en clair. Renommer votre fichier en .zip, sorter le xml qui contient votre document, ajouter dedans vos nouveau signet et voilà ^^ et resauvé le tout ensuite ^^.

https://fr.wikipedia.org/wiki/Office_Open_XML
Message modifié, 13 août 2019 - 09:57
Posté le 13 août 2019 - 20:34
Merci à tous, je vous tiens au courant de mes avancés dès que possible.
PS: j'ai la version WD20