Correspondance entre la valeur d'une cellule et un USERFORM

Résolu
ticrain Messages postés 178 Date d'inscription jeudi 15 mars 2007 Statut Membre Dernière intervention 2 janvier 2015 - 18 avril 2008 à 19:39
ticrain Messages postés 178 Date d'inscription jeudi 15 mars 2007 Statut Membre Dernière intervention 2 janvier 2015 - 19 avril 2008 à 13:56
Bonjour les ptis loups

Voila je suis débutant en programmation VBA excel. Désolé j'ai pas trouvé le thème qu'il fallait. Voici mon problème :

J'ai des valeurs dans les cellules A1 à A10. Ces nombres vont de 1 à 10.
A1 peut avoir tous les nombres de 1 à 10 egalement A2,A3.....

j'ai affecté c'est valeurs de cellule dans des labels. Il y'en a 10 au total.

label1 affiche le nombre qui ce trouve dans A1 (soit 1,2,3,4,5,6,7,8,9,ou10)
label2 "                                               " dans A2 (soit 1,2,3,4,5,6,7,8,9,ou10)

jusque la pas de soucis

Voici la suptilité si s'en est une!!!!

Je voudrai lorsque je clic sur le label1 avec la valeur 3 par exemple qu'il m'ouvre la userform3
si le label1 à la valeur 10 il m'ouvre la userform 10.

J'espere avoir été clair.

Merci pour votre aide.

7 réponses

Supra3000 Messages postés 159 Date d'inscription lundi 18 février 2008 Statut Membre Dernière intervention 8 janvier 2010 2
18 avril 2008 à 20:27
dim alloticrain as String


alloticrain = label1.text


if alloticrain = 1 then


userform1.show

else if  alloticrain = 2 then

userform2.show

...

Bonne prog
@+
3
zen69 Messages postés 584 Date d'inscription jeudi 28 décembre 2006 Statut Membre Dernière intervention 29 avril 2010 1
18 avril 2008 à 21:23
2. La valeur de la propriété CAPTION d'un label est un STRING donc
    if alloticrain = "1" then

excusez la




<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
3
cs_baz187rem Messages postés 78 Date d'inscription vendredi 23 mars 2007 Statut Membre Dernière intervention 21 juin 2010 1
19 avril 2008 à 10:20
Je rajouterai en plus que c'est lourd de travailler avec des if elseif elseif....

Pensez donc au Select case qui est beaucoup plus souple je trouve

Select case label1.caption

   case "1" : userform1.show
  case "2" : userform2.show
 ...
end Select
      
3
zen69 Messages postés 584 Date d'inscription jeudi 28 décembre 2006 Statut Membre Dernière intervention 29 avril 2010 1
18 avril 2008 à 21:22
Deux erreurs dans la solution proposée :
1. Un label ne possède pas de propriété TEXT mais CAPTION donc
    label1.caption
2. La valeur de la propriété CAPTION d'un label est un STRING donc
    if alloticrain = 1 then

Cordialement,

<hr size="2" width="100%" />  zen69 aka Ortho Le Profett
  [site web]
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
pile_poil Messages postés 682 Date d'inscription vendredi 6 avril 2007 Statut Membre Dernière intervention 4 août 2012 6
18 avril 2008 à 21:23
en toute logique j'aurais commencé par affecté la valeur des cellules à des variables puis éventuellement à des labels si nécessaire plutot que l'inverse
surtout si ces données sont nécessaire ailleurs que dans la form en cours en déclarant alors ces variables en "Public"

[reglement.aspx ]si c'est la solution, penser : REPONSE ACCEPTEE
0
cs_MPi Messages postés 3877 Date d'inscription mardi 19 mars 2002 Statut Membre Dernière intervention 17 août 2018 23
19 avril 2008 à 12:00
Où sont ces Labels ? sur la feuille ou sur un UserForm ?
Si c'est sur la feuille, de quelle boîte d'outils sont-ils pris ? Formulaire ou VB ?

MPi²
Pour ceux qui programment sous Office, n'oubliez pas qu'il existe un forum dédié à ces applications VBA....... ICI
0
ticrain Messages postés 178 Date d'inscription jeudi 15 mars 2007 Statut Membre Dernière intervention 2 janvier 2015
19 avril 2008 à 13:56
Bien vu les gards je vous remercie pour votre aide, et je vous dit à bientôt pour de nouvelles aventures...
0
Rejoignez-nous