Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Word > VBA Word
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/03/2011, 11h42   #1
Futur Membre du Club
 
Grégory MARTIN
Inscription : mars 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : Grégory MARTIN

Informations forums :
Inscription : mars 2010
Messages : 72
Points : 17
Points : 17
Par défaut VBA Combobox LimitToList property

Bonjour,
J'ai ajouté une combobox dans word comme ceci :
Code :
1
2
3
 
Dim cbox as InlineShape
Set cbox = ActiveDocument.InlineShapes.AddOLEControl("Forms1.Combobox.1")
Je voudrais savoir comment empêcher que l'utilisateur puisse mettre une valeur qui n'est pas dans la liste.

J'ai cherché un peu et j'ai vu qu'il y avait la propriété LimitToList.

Je voudrais savoir comment accéder à cette propriété car j'ai essayé :
Code :
1
2
 
cbox.OLEFormat.Object.LimitToList = True
et ça ne marche pas. (Runtime error : Object does not support this method or property.)

Par contre, pour récupérer la valeur sélectionnée, je fais ceci et ça fonctionne.
Code :
1
2
3
 
Dim s As String
s = cbox.OLEFormat.Object.Value
sunlover est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/03/2011, 20h35   #2
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

Ce n'est pas une propriété qui correspond à cet objet.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 11h11   #3
Futur Membre du Club
 
Grégory MARTIN
Inscription : mars 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : Grégory MARTIN

Informations forums :
Inscription : mars 2010
Messages : 72
Points : 17
Points : 17
Citation:
Envoyé par Heureux-oli Voir le message
Salut,

Ce n'est pas une propriété qui correspond à cet objet.
Y a-t-il un autre moyen de limiter la sélection à la liste ?
sunlover est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 11h18   #4
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
Salut,

je ne vois qu'une comparaison possile en VBA après sélection.
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 01/04/2011, 13h37   #5
Futur Membre du Club
 
Grégory MARTIN
Inscription : mars 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : Grégory MARTIN

Informations forums :
Inscription : mars 2010
Messages : 72
Points : 17
Points : 17
Citation:
Envoyé par Heureux-oli Voir le message
Salut,

je ne vois qu'une comparaison possile en VBA après sélection.
Merci.
sunlover est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/04/2011, 16h41   #6
Futur Membre du Club
 
Grégory MARTIN
Inscription : mars 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : Grégory MARTIN

Informations forums :
Inscription : mars 2010
Messages : 72
Points : 17
Points : 17
Citation:
Envoyé par Heureux-oli Voir le message
Salut,

je ne vois qu'une comparaison possile en VBA après sélection.
Encore une dernière question: pour ajouter des éléments à ma combobox, j'utilise
Code :
1
2
3
 
cbox.addItem "toto"
cbox.addItem "tata"
.

Mais comment faire pour récupérer la liste des propositions, élément par élément, pour voir si "titi" = un des éléments de la liste ?

Je n'ai pas envie de stocker la liste dans un tableau car je crois qu'elle y est déjà dans l'objet combobox ou alors je me trompe ?
sunlover est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 14h25   #7
Futur Membre du Club
 
Grégory MARTIN
Inscription : mars 2010
Messages : 72
Détails du profil
Informations personnelles :
Nom : Grégory MARTIN

Informations forums :
Inscription : mars 2010
Messages : 72
Points : 17
Points : 17
J'ai trouvé une solution plus simple que de comparer un à un les éléments (je ne sais d'ailleurs pas comment accéder aux éléments de la liste).

Il suffit de faire ceci :
Code :
1
2
3
4
5
6
7
Sub Cbox_Change()
    With ThisDocument.Cbox
        If .ListIndex = - 1 Then 
            MsgBox "Seuls les choix proposés sont admis."
        End If
    End With
End Sub
sunlover est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/04/2011, 20h24   #8
Responsable Word

 
Avatar de Heureux-oli
 
Homme Olivier Lebeau
Contrôleur d'industrie
Inscription : février 2006
Messages : 17 321
Détails du profil
Informations personnelles :
Nom : Homme Olivier Lebeau
Âge : 47
Localisation : Belgique

Informations professionnelles :
Activité : Contrôleur d'industrie
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : février 2006
Messages : 17 321
Points : 29 220
Points : 29 220
__________________
J'ai pas encore de décodeur, alors, postez en clair ! Comment mettre une balise de code ?
Débutez en VBA

Mes articles


Dans un MP, vous pouvez me dire que je suis beau, ... mais si c'est une question technique je ne la lis pas ! Vous êtes prévenus !
Heureux-oli est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 21h36.


 
 
 
 
Partenaires

Hébergement Web