affectation d'un valeur dans une variable accrémentée

  • Initiateur de la discussion bubu
  • Date de début
B

bubu

Guest
je cherche a affecter une valeur dans une variable que je souhaite accrémenter
je m'explique :
j'ai comme variable result1, result2 ,result3
par le biais d'un compteur tmp qui s'accrémente, je souhaite affecter une valeur à " result(tmp) "(syntaxe pas valide)

quelle syntaxe utilisée pour réussir les lignes ci dessus, concaténation?????


tmp = tmp +1

result(tmp) = 1


merci par avance
 
T

Ti

Guest
plusieurs façons de faire, en voici 2 :

Temp = Temp + 1
If Temp = 4 Then Temp = 1
Select Case Temp
Case 1
Resultat1 = 1
Case 2
Resultat2 = 1
Case 3
Resultat3 = 1
End Select

'ou alors
Dim Resultat(1 To 3) As Long

Temp = Temp + 1
If Temp = 4 Then Temp = 1
Resultat(Temp) = 1
 
B

bubu

Guest
merci Ti pour ta réponse,

l'utilisation de Case est trop lourd a utilisé dans mon code cela fera une tartine de lignes. c'est pour cela que ta seconde solution est un bon début.
je développe ma réponse, je souhaite utiliser les variables resultat1, resultat2....

Dim Resultat(1 To 3) As Long

Temp = Temp + 1
If Temp = 4 Then Temp = 1
Resultat(Temp) = 1

mais dans ce cas , resultat1 a tjs la valeur initiale et ne prend pas en compte cette affectation à 1
uniquement resultat(temp) =1
 
T

Ti

Guest
j'ai l'impression que tu n'es pas très fixé sur l'utilisation de tes variables. Comprenons nous bien, soit tu utilises toujours tes 3 variables Resultat1, Resultat2 et Resultat3, auquel cas il faut que tu passes par un select Case ou un If then else,
soit tu reprends le tableau Resultat(Temp), et dans ce cas, au lieu de référencer Resultat1 etc., tu référenceras Résultat(1), Resultat(2) et Resultat(3) ce 1, 2 ou 3 étant attribué dynamiquement par ta variable Temp.
 
T

Ti

Guest
question récurrente ! Est-ce seulement utile ? Inutile de la supprimer, tu peux simplement réagir à l'événement QueryClose, mais je n'ai pas le temps de te mettre un exemple. Gageons que d'autres qui passeront par là auront les 2 ou 3 lignes nécessaires sous la main (n'est ce pas Thierry ?)
 
B

bubu

Guest
j'ai déjà essayé par queryclose, mais la userform est régulièrement unloaddé alors l'instruction se lance. le fait de désactiver la croix me permet de gérer la fermeture de la userform par un bouton
 

Discussions similaires

Statistiques des forums

Discussions
312 492
Messages
2 088 910
Membres
103 983
dernier inscrit
AlbertCouillard