Accueil
Accueil Le Club Delphi Kylix C C++ Java J2EE DotNET & C# Visual Basic Access Pascal Dev Web PHP ASP XML UML SQLSGBD Windows Linux Autres
logo

precedent    sommaire    suivant   


Comment faire pour effectuer une action sur un champ de formulaire ?
auteur : Lebeau Olivier
Les champs utilisés pour les formulaires peuvent être associés à des macros.
Un double-clic sur le contrôle

La liste déroulante vous permet de choisir une macro.


Comment imposer pour les cases à cocher des formulaires un choix unique ?
auteur : Lebeau Olivier
Contrairement aux UserForm, les formulaires ne permettent pas un groupement des cases à cocher.
Par le biais des macros, il est possible d'imposer un seul choix.

Le principe est simple, il suffit de décocher toutes les autres cases à cocher.

Sub CaseACocher1()
ActiveDocument.FormFields(2).Result = False
ActiveDocument.FormFields(3).Result = False
ActiveDocument.FormFields(4).Result = False
ActiveDocument.FormFields(5).Result = False
End Sub
Si nous avons 5 cases à cocher, lors du choix de la première, on change la valeur des autres à Faux (non coché)


Pourquoi je ne parviens pas à utiliser les champs de mon formulaire ?
auteur : Lebeau Olivier
Pour pouvoir utiliser un formulaire, le document doit être protégé. Même si aucun mot de passe n'est défini, sans protection, vous ne pouvez remplir le formualire.


Comment récupérer les données de mon formulaire ?
auteur : Lebeau Olivier
La récupération des données de formulaire ne devient réellement intéressante qu'en VBA.

On récupère le contenu d'un champ de formulaire avec la propriété Result de ce champ.

Dim fld As FormField
For Each fld In Activeocument.FormFields
	Debug.Print fld.Result
Next fld

Comment ajouter des données à une liste déroulante ?
auteur : Lebeau Olivier
La méthode utilisée pour ajouter des données à une liste déroulante se fait de préférence sur l'initialisation du UserForm.
Dans l'exemple qui suit, nous allons sur l'évènement Initialize du UserForm remplir le Combo avec deux éléments : "a" et i.

Private Sub UserForm_Initialize()
Dim i As Integer
For i = 1 To 50
    Me.ComboBox1.AddItem "a" & i
Next i
End Sub
Nous pourrions envisager l'utilisation d'un tableau pour le remplissage du combo.

Option Base 1

Private Sub UserForm_Initialize()
Dim i(6) As String
Dim j As Integer

i(1) = "A"
i(2) = "B"
i(3) = "C"
i(4) = "D"
i(5) = "E"

For j = 1 To UBound(i)
    Me.ComboBox1.AddItem i(j)
Next j
End Sub
lien : Les tableaux en VBA

Comment faire pour obtenir une liste déroulante contenant plus de 25 items ?
auteur : Lebeau Olivier
Dans un formulaire Word, il n'est pas possible d'utiliser une liste déroulante contenant plus de 25 entrées.

Pour obtenir une liste avec plus de 25 éléments, il est nécessaire de passer par un UserForm. Ce UserForm contiendra une liste déroulante.
Après la mise à jour, l'élément sélectionné sera envoyé dans un champ de formulaire du document.
Avec un tableau

Private Sub UserForm_Initialize()
Me.ComboBox1.List() = Array("Un", "Deux", "Trois")
 
End Sub
Une autre possibilité de remplissage est l'utilisation de la méthode AddItem
Avec la méthode AddItem

Private Sub UserForm_Initialize()
Dim i As Byte
For i = 1 To 40
    Me.ComboBox1.AddItem "a" & i
Next i
End Sub
Lors de l'ouverture du document, il faut initialiser le UserForm
Initialisation du UserForm

Sub document_open()

Load UserForm1
UserForm1.Show

End Sub
L'écriture de la donnée dans le document. Pour recevoir la donnée, nous aurons besoin d'un champ texte.
Mise à jour du champ texte après choix

Private Sub ComboBox1_Change()
ActiveDocument.FormFields(1).Result = Me.ComboBox1.Value
UserForm1.Hide
 
End Sub
lien : Support Microsoft

precedent    sommaire    suivant   

Consultez les autres F.A.Q's


Les sources présentés sur cette pages sont libre de droits, et vous pouvez les utiliser à votre convenance. Par contre cette page de présentation de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright ©2008  Developpez LLC. Tout droits réservés Developpez LLC. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents et images sans l'autorisation expresse de Developpez LLC. Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérets. Cette page est déposée à la SACD.

Vos questions techniques : forum d'entraide Accueil - Publiez vos articles, tutoriels, cours et rejoignez-nous dans l'équipe de rédaction du club d'entraide des développeurs francophones. Nous contacter - Copyright 2000..2005 www.developpez.com