PB et DOC VARIABLES de Word

Programmation d'applications complexes
hackotedelaplaque
Messages : 121
Inscription : mer. 21/janv./2004 22:18

PB et DOC VARIABLES de Word

Message par hackotedelaplaque »

Bonjour à tous !!

Long time no see.... mais même si je n'ai pas posté ici depuis un bail, je n'ai pas délaissé mon PB pour autant !!
Le boulot, le boulot vous savez ce que c'est....

Justement, j'ai l'occasion de joindre pour une fois l'utile à l'agréable !
Je vous explique : pour mon travail, j'ai développé une petite appli qui nous est fort utile !
Le truc c'est que je l'ai fait avec les moyens mis à ma disposition, c'est à dire en visual basic à partir du menu "macro" de Word 2000.

J'ai eu l'accord de mon directeur pour le développer sous la forme d'un exe qui sera déployé sur tous les postes de nos sites de Paris et province. (la classe vu que j'appartiens pas du tout à un service d'informatique dans cette boîte... en espérant que ça se négociera au moment des augmentations... :lol: bref).

Du coup je choisis de porter mon code en PB naturellement... mais je bloque sur un truc tout con !

Le principe c'est un document word avec des champs de code DOC VARIABLE. Mon appli interragit avec. Une fois qu'on a saisit tout ce qu'il faut, en quittant le logiciel le document a remplacé les variables par les infos saisies, d'autres calculées, et le tout est prêt à être imprimé !

Sur visual c'était facile à faire, on peut les récupérer et un simple ThisDocument.Fields.Update les met à jour.

D'où ma question : quelles fonctions en PB permettent d'interragir avec les champs de code de word ?
Sinon qu'elle API utiliser et où je peux trouver des infos ?

Merci d'avance pour votre aide (pensez à mon augmentation soyez sympas :cry: )
10 CLS
20 PRINT "Vive PureBasic"
30 GOTO 20
Lna
Messages : 181
Inscription : mar. 21/juin/2005 11:11

Message par Lna »

Cela ne va pas solutionner le problème, mais peut être apporter un départ de réponse, en récuperant la doc. 8O

http://www.wotsit.org/search.asp?s=text

A +
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

A mon avis tu ne vas pas toucher lourd d'augmentations :D

Cette commande et d'autres sont propres à VBA ou à VBA pour word
Ces commandes font parties de librairies de l'application word et/ou office

Sous word dans le menu outil/référence de l'éditeur Visual basic de word, tu auras la liste des librairies propres uitilisées par ton projet. On pourrait penser pouvoir importer les commandes dans PB puis les utiliser mais je ne sais pas si ces Dll sont distribuables.

Mais de là à savoir dans quel module c'est et quelle est la Dll et comment appeler les fonctions, c'est une autre histoire (je sens ton augmentation fondre à vue d'oeil)

Il exite des interfaces propres aux fonctions word, il me semble avoir vu du code la-dessus sur le forum anglais mais cela nécessite pour toi une longue recherche dans les interfaces pour trouver ce que tu cherches et comment l'utiliser.

Une autre solution est de faire un exe visual qui met à jour tes champs. Ton exe visual peut être lancé par par ton code PB. Pour mettre à jour les champs dans word depuis du code visual, je ne sais pas si le fichier word doit être ouvert ou si'il peut y accéder en écriture sans ouvrir le fichier (en fait sans l'afficher). J'ai rencontré des problèmes en écrivant une macro dans word pour lire des champs dans un fichier excel, le fichier excel comportait plusieurs macro dont des macros qui s'exécutent à l'ouverture et ça m'affichait un message d'erreur, je n'ai pas encore trouvé une solution satisfaisante.

J'espère que l'on te proposera une meilleure solution :roll:
hackotedelaplaque
Messages : 121
Inscription : mer. 21/janv./2004 22:18

Message par hackotedelaplaque »

Ok je saisis très bien le problème.
La librairie Microsoft Word Object Library 10.0 est référencée dans mon projet.

L'idée d'un exe vb appelé par PB pour mettre à jour les champs me semble très pertinente et facile à mettre en oeuvre. Mais dans ce cas, autant poursuivre le projet en vb de A à Z. Ce que je risque fort de faire (j'aurais quand même mon augmentation au final :twisted: ). Dommage j'aurais bien aimé mettre la griffe PureBasic sur mon travail ! (l'occasion aussi de promouvoir ce fabuleux langage).

Par curiosité, je suppose que le même problème technique se pose avec Open Office ? Encore que la question de la diffusion des DLL ne devrait pas être un souci GPL oblige ?

Concernant les champs de code, mon document est toujours affiché en arrière plan. Si quelqu'un a une solution pour travailler dessus en passant le fichier sans l'ouvrir ça m'intéresse aussi.

Merci pour vos réponses présentes et commentaires à venir !
(je vous rassure aussi, je ne suis pas si vénal et ces petits progs, même pour le taf, sont avant tout un plaisir intellectuel et créatif !!!)
10 CLS
20 PRINT "Vive PureBasic"
30 GOTO 20
Avatar de l’utilisateur
Flype
Messages : 2431
Inscription : jeu. 29/janv./2004 0:26
Localisation : Nantes

Message par Flype »

Salut,

Peut etre es-tu intéressé par ce sujet sur le forum allemand :

http://www.purebasic.fr/german/viewtopi ... 9e6c37248a

Il y est question de manipuler Access ( mais sans doute aussi Office ) avec VBScript ou JScript via PureBasic.
Image
Anonyme2
Messages : 3518
Inscription : jeu. 22/janv./2004 14:31
Localisation : Sourans

Message par Anonyme2 »

Dommage la doc est en allemand

Je n'ai pas trop regardé le code mais ca semble intéressant de passer un script :D

SI j'ai du temps je regarderai de plus près.
Répondre