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 Suble 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 ?
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
Partager