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

VBA Word Discussion :

pb de signets qui se suppriment dans les en-tete et pied de page [WD-2010]


Sujet :

VBA Word

  1. #1
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut pb de signets qui se suppriment dans les en-tete et pied de page
    Bonjour,

    la suite de mon pb d'hiers. Je remet mon code ci-dessous:

    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
    24
    25
    26
    27
    28
    29
    30
     
    Private Sub btValider_Click()
      Dim selectionThemeExpertise As String
      Dim MoisValidation As String
      Dim MoisPeremption As String
      Dim AnneeValidation As String
      Dim AnneePeremption As String
      If VerificationControl = True Then
        ActiveDocument.RemplirChamps "Perimetre", cbPerimetre.Value
        ActiveDocument.RemplirChamps "NivLecture", cbNivLect.Value
        ActiveDocument.RemplirChamps "TitreDoc", tbTitre.Text
        For i = 0 To lbThExpertise.ListCount - 1
            If lbThExpertise.Selected(i) = True Then
                selectionThemeExpertise = selectionThemeExpertise & lbThExpertise.List(i) & "/"
            End If
        Next i
        selectionThemeExpertise = Left(selectionThemeExpertise, Len(selectionThemeExpertise) - 1)
        ActiveDocument.RemplirChamps "ThemeExpertise", selectionThemeExpertise
        MoisValidation = CStr(Format(dtDebutValidite.Value, "mmmm"))
        AnneeValidation = CStr(Format(dtDebutValidite.Value, "yyyy"))
        ActiveDocument.RemplirChamps "dtPublication", MoisValidation & " " & AnneeValidation
        MoisPeremption = CStr(Format(dtFinValidite.Value, "mmmm"))
        AnneePeremption = CStr(Format(dtFinValidite.Value, "yyyy"))
        ActiveDocument.RemplirChamps "dtPeremption", MoisPeremption & " " & AnneePeremption
        ActiveDocument.Fields.Update
        Me.Hide
      Else
        MsgBox ("Tous les champs obligatoires n'ont pas été remplis.")
      End If
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    ublic Sub RemplirChamps(champs As String, valeur As String)
    On Error GoTo rien
    Dim Place As Long
    Place = ActiveDocument.Bookmarks(champs).Range.Start
    ActiveDocument.Bookmarks(champs).Range.Text = valeur
    ActiveDocument.Bookmarks.Add Name:=champs, _
    Range:=ActiveDocument.Range(Place, Place + Len(valeur))
    rien:
    End Sub
    le souci, c'est que pour les champs qui sont en en-tete (signet Perimetre), et ceux en pied-de-page (signets DtValidation et DtPeremption), se suppriment à chaque fois que je valide mes informations saisient dans mon formulaire, dois-je faire 2 autre fontion RemplirChamps pour l'en-tete et le pied de page ? Comment garder ces signets actifs pour les mises à jours suivante ?

  2. #2
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut
    Je précise que ça fonctionne pour mes signets dans le corps du model (titre, thème d'expertise et niveau de lecture), car je récupère sa place et recréé le signet après sa modification. Pourquoi ça ne foctionne pas dans l'en-tete et le pied-de-page, j'ai bcp cerché sur internet, mais aucune réponse. Dois-je abandonner les signets pour cette soluton ?

  3. #3
    Membre habitué
    Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2007
    Messages
    246
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Février 2007
    Messages : 246
    Points : 191
    Points
    191
    Par défaut
    J'ai donc abandonner les signets pour l'en-ête et le pied-de-page, je suis passer par des label simples:

    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
     
    Public Sub RemplirChamps(ByVal champs As String, ByVal valeur As String)
    On Error GoTo rien
    Dim Place As Long
    If champs = "Perimetre" Then
      lPerimetre.Caption = valeur
    ElseIf champs = "dtPublication" Then
      lDtValidation.Caption = valeur
    ElseIf champs = "dtPeremption" Then
      lDtPeremption.Caption = valeur
    Else
    Place = ActiveDocument.Bookmarks(champs).Range.Start
    ActiveDocument.Bookmarks(champs).Range.Text = valeur
    ActiveDocument.Bookmarks.Add Name:=champs, _
    Range:=ActiveDocument.Range(Place, Place + Len(valeur))
    End If
    rien:
    End Sub

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/05/2010, 15h36
  2. [script.aculo.us] Variable qui s'égare dans les méandres de mon code
    Par akrogames dans le forum Bibliothèques & Frameworks
    Réponses: 5
    Dernier message: 06/12/2009, 16h36
  3. [XL-2007] Renvoyer la valeur d'une cellule dans les en tête et pied de page.
    Par bedoch dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 27/07/2009, 09h02
  4. Comment trouver ce qui a changé dans les tables de ma base
    Par tibofo dans le forum Administration
    Réponses: 2
    Dernier message: 06/03/2009, 12h14

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