Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Général VBA
Général VBA Forum général VBA . Pour les logiciels spécifiques (Access, Excel, Word, ...), postez dans les bons sous forums.
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 24/07/2006, 15h29   #1
Membre expérimenté
 
Inscription : février 2004
Messages : 1 301
Détails du profil
Informations forums :
Inscription : février 2004
Messages : 1 301
Points : 528
Points : 528
Envoyer un message via MSN à mister3957
Par défaut Parcourir les différentes valeurs d'une énumération

Bonjour à tous,

Je voudrais savoir s'il est possible de récupérer les différentes valeurs d'une énumération sous forme de texte..

Par exemple:

Code :
1
2
3
4
5
6
 
Private Enum Values
   VALUE1
   VALUE2
   VALUE3
End Enum
Et je voudrais faire une fonction permttant de récupérer, sous forme de String, les valeurs "VALUE1" "VALUE2" "VALUE3" afin que lorsque j'aurai besoin de rajouter "VALUE4", ça sera assez générique pour juste rajouter cette nouvelle valeur dans l'énumération pour que le reste se mette à jour...

Au pire des cas si c'est pas possible, est-ce que à partir d'une valeur de l'énumération je peux récupérer son texte?

Merci

A bientôt

Aurélien
mister3957 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/07/2006, 15h41   #2
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Tu peux peut-être t'inspirer de ça (?)
Code :
1
2
3
4
5
6
7
8
9
10
Sub Collection_Créer()
 Dim MaColect  As New Collection
    ' Rempli la collection
    MaColect.Add "Et alors ? ", "Un"
    MaColect.Add "C'est ", "Deux"
    MaColect.Add "quoi ", "trois"
    MaColect.Add "ton problème ?", "Quatre"
    MsgBox MaColect("Un") & MaColect("Deux") & MaColect("trois") & MaColect("Quatre")
 
End Sub
Il te suffit ensuite d'énumérer les membres de ta collection pour avoir les valeurs (à la place de la dernière ligne)
Tu dis
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/03/2008, 15h55   #3
Invité de passage
 
Inscription : septembre 2006
Messages : 10
Détails du profil
Informations forums :
Inscription : septembre 2006
Messages : 10
Points : 4
Points : 4
a partir de ton enumeration:

Code :
1
2
3
4
5
6
7
8
9
10
Private Enum MonEnumeration
   VALUE1
   VALUE2
   VALUE3
End Enum
 
Dim elt As String
For Each elt In [Enum].GetNames(GetType(MonEnumeration))
   msgbox(elt)
next
olixelle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/03/2008, 11h13   #4
Rédacteur
 
Avatar de DarkVader
 
Homme
Développeur informatique
Inscription : mai 2002
Messages : 1 821
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Paris (Île de France)

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : mai 2002
Messages : 1 821
Points : 2 402
Points : 2 402
Citation:
Envoyé par olixelle Voir le message
a partir de ton enumeration:

Code :
1
2
3
4
5
6
7
8
9
10
Private Enum MonEnumeration
   VALUE1
   VALUE2
   VALUE3
End Enum
 
Dim elt As String
For Each elt In [Enum].GetNames(GetType(MonEnumeration))
   msgbox(elt)
next
C'est le Java Bleu ?

ou du DotNet, mais du VB6 ou du VBA, je doute.
__________________
« Heureux soient les fêlés, car ils laisseront passer la lumière. »

Pensez aux liens
Rechercher - Google - Google Labs - AllApi
et avant de poster : « A lire » , « Tutoriel sur le déboguage »
DarkVader est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/03/2008, 09h07   #5
Inactif
 
Avatar de ouskel'n'or
 
Inscription : février 2005
Messages : 12 466
Détails du profil
Informations forums :
Inscription : février 2005
Messages : 12 466
Points : 11 930
Points : 11 930
Un an et demi de réflexion, ça doit être pour ça...
ouskel'n'or est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h43.


 
 
 
 
Partenaires

Hébergement Web