IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Initialiser un signet word à partir d'excel


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 9
    Points
    9
    Par défaut Initialiser un signet word à partir d'excel
    bonjour j 'ai un petit souci je veux intialiser mon signet apres fermeture du word voici le code que je lance il marche c'est de devloppez.com
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
        For i = 1 To 3
            'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
            wrdDoc.Bookmarks("Signet1").Range.Text = Worksheets("Sheet1").Cells(i, 1)
        Next i
    mais lorseque je execute encore mon code il l'ajoute encore une fois
    est ce qu'il y a une solution à mon probléme

  2. #2
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Conditionne l'exécution de ces trois lignes. Tu peux utiliser un boolean
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If not ok then
          'ta boucle
          ok = true
    endif
    Et si tu sors de cette macro avant de la relancer, déclare Ok en Public dans un module
    Enfin... c'est "une" solution...

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 9
    Points
    9
    Par défaut Initialiser un signet word à partir d'excel
    en fait j 'ai un probléme lorseque je lance word
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    Dim WordApp As Word.Application
    Dim WordDoc As Word.Document
    Dim i As Byte
     
        Set WordApp = CreateObject("word.application")    'ouvre une session Word
        Set WordDoc = WordApp.Documents.Open("monDocument.doc")    'ouvre le document Word
        WordApp.Visible = False    'Word est masqué pendant l'opération
     
        For i = 1 To 3
            'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
            WordDoc.Bookmarks("Signet" & i).Range.Text = Cells(i, 1)
        Next i
     
        WordApp.Visible = True    'affiche le document Word
        'WordDoc.PrintOut 'Pour imprimer le doc obtenu
     
        'WordDoc.Close True 'ferme le document word en sauvegardant les données
        'WordApp.Quit 'ferme la session Word
    je voie pas comment initialiser les signets pour les vider

  4. #4
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Je viens enfin de comprendre Tu veux simplement renseigner les signets de ton doc...
    J'ai donc... "testé pour vous" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    Sub RenseignerLesSignets()
    Dim WordApp As Word.Application
    Dim WordDoc As Word.Document
    Dim i As Byte
     
        Set WordApp = CreateObject("word.application")    'ouvre une session Word
        Set WordDoc = WordApp.Documents.Open("D:\Doc\LeDoc.doc")    'ouvre le document Word
        WordApp.Visible = False    'Word est masqué pendant l'opération
        With WordApp
            For i = 1 To 3
                .Selection.Goto What:=wdGoToBookmark, Name:="Signet" & i
                .Selection.TypeText Text:=Cells(i, 1).Value
                'les signets du document Word sont nommés Signet1 , Signet2 , Signet3
            Next i
        End With
     
        'WordApp.Visible = True    'affiche le document Word
        'WordDoc.PrintOut 'Pour imprimer le doc obtenu
     
        WordDoc.Close True 'ferme le document word en sauvegardant les données
        WordApp.Quit 'ferme la session Word
     
    End Sub
    Désolé, aujourd'hui j'étais un peu bouché
    A+

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    18
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 18
    Points : 9
    Points
    9
    Par défaut ca marche encore pas
    en fait lorsque je le lance encore une fois les contenues des cellule cells(1,i)
    se repete et je voudrais qu'il s'intialise que le contenue du signet s'initialise

  6. #6
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Points : 15 546
    Points
    15 546
    Par défaut
    Pour remplacer la valeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
         With WordApp
            For i = 1 To 3
                .Selection.Goto What:=wdGoToBookmark, Name:="Signet" & i
                .Selection.EndKey Unit:=wdLine, Extend:=wdExtend
                .Selection.TypeText Text:=Cells(i, 1).Value
            Next i
        End With
    Pour supprimer la valeur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
         With WordApp
            For i = 1 To 3
                .Selection.Goto What:=wdGoToBookmark, Name:="Signet" & i
                .Selection.EndKey Unit:=wdLine, Extend:=wdExtend
                .Selection.TypeText Text:=""
            Next i
        End With
    S'il n'y a rien d'autre sur ta ligne.

Discussions similaires

  1. Réponses: 0
    Dernier message: 30/11/2011, 18h56
  2. insérer un signet dans word à partir d'Excel
    Par kristoff dans le forum Général VBA
    Réponses: 10
    Dernier message: 02/09/2011, 01h05
  3. Publipostage Word à partir d'Excel
    Par Kara dans le forum Delphi
    Réponses: 30
    Dernier message: 17/08/2007, 18h39
  4. [VBA-E] ouverture de fichier word à partir d'Excel
    Par aramge dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 30/08/2006, 10h18
  5. [VBA-E]Insérer des autotext dans Word à partir d'excel
    Par noordman dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 25/04/2006, 16h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo