begin process at 2008 09 06 20:02:18
1 237 931 membres
313 nouveaux aujourd'hui
14 314 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

UTILISATION INTELLIGENTE DE WORD POUR REALISER LES ETATS


Information sur la source

Catégorie :Divers Classé sous : WORD, BOOKMARK, REPORT, AUTOMATION, ASIMENGO Niveau : Initié Date de création : 09/12/2007 Vu / téléchargé: 6 824 / 950

Note :
10 / 10 - par 2 personnes
10,00 / 10

  • 1

  • 2

  • 3

  • 4

  • 5

  • 6

  • 7

  • 8

  • 9

  • 10

Commentaire sur cette source (6)
Ajouter un commentaire et/ou une note

Description

Il s'agit d'une petite classe simple et intelligente qui permet d'utiliser Word pour l'édition des états.

Domaine application:
- Secretariat   : Impression des lettres types et documents avec des espaces à remplir
- Developpement : Tout état basé sur un recordset à un seul enregistrement

Prerequis:
- Ouvrir Word
- Construire l'état avec toutes les mises en forme, aussi beau qu'on le souhaite
- Définir les signets dans le document. (Remplacer les ... par des signets)
- Enregistrer le document et mettre un mot de passe si besoin

Source

  • Tout est dans le Zip, mais l'utilisation est aussi simple que le code ci-dessous
  • Private Cls1 As ClsManageWordBookmarks
  • Private Sub CmBouttons_Click(Index As Integer)
  • With Cls1
  • Select Case Index
  • Case 0: .PrintDoc
  • Case 1: .ViewDoc
  • Case 2: .SaveAs [Text1]
  • End Select
  • End With
  • End Sub
  • ...
Tout est dans le Zip, mais l'utilisation est aussi simple que le code ci-dessous

Private Cls1 As ClsManageWordBookmarks

Private Sub CmBouttons_Click(Index As Integer)
    With Cls1
        Select Case Index
            Case 0: .PrintDoc
            Case 1: .ViewDoc
            Case 2: .SaveAs [Text1]
        End Select
    End With
End Sub

...

Conclusion

Ce concept a beaucoup d'applications, par exemple la traduction des états devient plus facile suivant ce principe, ...

Il s'agit d'une idée originale qui me trotte depuis dans la tête que je partage avec vous.
J'aimerais bien avoir des suggestions pour l'amélioration du code et surtout pour la rendre plus rapide.

ASIMENGO
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !

Télécharger le zip

  • signaler à un administrateur
    Commentaire de asimengo le 11/12/2007 06:10:02

    Du fait que certains ne savent pas ce qu'est un signet sous Word, une recherche rapide sous google me donne les liens ci-dessous à leur intention.

    http://www.alphaquark.com/Informatique/Word.htm#signets

    http://www.winaide.net/article11.html

    Par rapport à la question d'un ami de savoir l'utilité de ce code. Je dois préciser que la classe est la plus importante le reste sert juste à montrer son utilisation.
    Avec cet outil je gagne un temps énorme à la création des états. La plupart des clients ont déjà des états sous word pour leur gestion manuelle avant de demander qu'on automatise l'activité. Avec cette classe vous avez juste à recupérer à l'identique ce qui existe déjà, graphique, mise en forme, ...., la seule chose à faire est d'y rajouter des signets avec des noms spécifiques.

    Pour mon utilisation j'ai une table de correspondance avec nom de signet et nom du champ de ma BD, de ce fait je peux même rajouter des signets au gré (champs complementaires) sans devoir toucher au source du programme, n'est ce pas génial ca.

    Une des contraintes de cet utilitaire est d'avoir Word. J'ai download la visionneuse je ferai des recherches pour voir comment l'utiliser.

    J'aimerai par contre avoir l'avis des specialistes en utilisation des ressources pour me donner des idées d'optimisation. Je le trouve un peu long à décharger bien que je pense avoir déjà fait du mieux pour l'optimiser. Donc il devrait avoir surement quelque chose de plus à faire la dessus, alors vos avis.


  • signaler à un administrateur
    Commentaire de peug le 17/12/2007 07:52:02 10/10

    J'aime bien. De plus l'utilisation d'une classe est très pratique et "propre".
    Mais je me suis toujours demandé si un poste n'a pas Word donc pas de référence "Microsoft Word 11 Object Library"... Ca plante ? (je vais pas désinstaller mon office pour autant ! :) ou encore s'il a la version 12 et non 11.

    Comment ce la réagit et comment y pallier ?

  • signaler à un administrateur
    Commentaire de Renfield le 17/12/2007 08:55:02 administrateur CS

    11 et superieur géré, si la reference 11.0 est choisie.

    si pas d'office => crash

    l'idéal est d'utiliser plutot du 'late binding'...
    Dim oApp As Variant
    Dim oDocument as Variant
    Set oApp = CreateObject("Word.Application")
    ...

    ainsi, pas de soucis de version

  • signaler à un administrateur
    Commentaire de asimengo le 17/12/2007 16:06:06

    @Peug: Merci pour la note, qui a dit que ce n'était pas flatteur, lol

    @Renfield: Merci pour cet astuce, effectivement c'est idéal.

    Mais en fait je savais ce que je voulais mais pas les instructions qui vont avec, alors avec une declaration explicite (je ne sais comment dire le contraire du late binding), je suis assisté en codant et je peux parcourir toutes les propriétés et méthodes des objects, ainsi savoir ce qui est possible.
    Au fait Renf, maintenant que t'es là, y'a pas de lacunes d'utilisation de ressources que tu as détecté là. Je pense que l'algo c'est OK, mais j'aimerai pouvoir ne pas charger word en entier mais juste utiliser les dll dont j'ai besoin pour imprimer, visualiser et enregistrer en .doc ou .rtf

  • signaler à un administrateur
    Commentaire de Gael51 le 17/12/2007 20:07:04 10/10

    Super idée,félicitation.

    Quelqu'un pourrait il faire quelque chose de semblable en .net ?

    ça serait super

  • signaler à un administrateur
    Commentaire de asimengo le 18/12/2007 08:06:52

    @GAEL51: Il te suffit de compiler la classe dans une dll et tu pourras l'utiliser ou tu veux.

Ajouter un commentaire

Pub



Appels d'offres

CalendriCode

Septembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
2930     

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS