Réattribuer les valeurs d'une variable à une autre variable

Youri

XLDnaute Occasionnel
Bonjour à tous,

Supposons qu'on a une liste de variables (contenues dans l'array var(1 To 10)) dont les valeur ressemblent à ça :
var1 = 0
var2 = A2
var3 = 0
var4 = A8
var5 = A12
var6 = B7
var7 = 0
var8 = 0
var9 = 0
var10 = 12
Comment faire pour réaffecter uniquement les valeurs différentes de 0 à de nouvelles variables, pour aboutir au résultat suivant : ?
vardiffde0_1 = A2
vardiffde0_2 = A8
vardiffde0_3 = A12
vardiffde0_4 = B7
vardiffde0_5 = 12
J'ai essayé avec cette macro, mais ça réaffecte uniquement une variable, au delà, ça fonctionne pas (variablecompte provient d'un calcul précédent, de même pour variablenonvide) :
Code:
If variablecompte > 0 Then
    ReDim var_ref(variablecompte, 4)
    depart_boucle_var_ref = 1
    l = 1
    m = 1
departdelaboucle: For k = depart_boucle_var_ref To variablecompte
    For i = l To 4
    For j = l To 4
        If variablenonvide(i, j) <> 0 Then
            var_ref(k, 1) = variablenonvide(i, j)
            depart_boucle_var_ref = depart_boucle_var_ref + 1
            l = l + i
            m = m + j
            GoTo departdelaboucle
        End If
    Next
    Next
Next
End If
For n = 1 To variablecompte
    messagetest = messagetest & n & ":" & var_ref(n, 1) & vbCrLf
Next
MsgBox messagetest

Je vous remerci à l'avance pour votre aide,
Youri
 
Dernière édition:

Youri

XLDnaute Occasionnel
Re : Réattribuer les valeurs d'une variable à une autre variable

Bonjour à tous,

Je reviens à ce problème car j'ai trouvé la solution : j'ai crée une macro qui permet d'aboutir au même résultat. Elle se trouve dans un fichier ci-joint. Par contre, je ne comprends pas entièrement comment elle fonctionne ... Et oui, même avec ses propres macro, ça arrive ... En fait, je comprends pas vraiment comment la boucle qui stocke toutes les valeurs dans la variable "valeur" fonctionne. Donc si vous pouvez me l'expliquer, je vous en serais infiniment reconnaissant.

Merci à l'avance,
Youri

PS : le tableau analysé ne contient que des chiffres mais on peut sans problème y rentrer tous les caractères que l'on veut (tous ce qui entre dans la catégorie String).
 

Pièces jointes

  • Dvp consolider_valeures.xls
    39.5 KB · Affichages: 60
Dernière édition:

Youri

XLDnaute Occasionnel
Re : Réattribuer les valeurs d'une variable à une autre variable

Bonjour à tous,

En fait, ce que je ne comprends pas dans la boucle qui stocke toutes les valeurs dans la variable "valeur", c'est comment exactement elle s'incrémente et pourquoi elle s'incrémente justement. De plus, ce que je ne comprends pas, c'est pourquoi on ne peut pas remplacer le GoTo par un Exit For et dans la boucle qui est au dessus, rajouter un deuxième Exit For, qui ne fonctionnera toutefois que si la variable issue de la boucle en dessous est différente de 0 et de ="". Lorsque j'essaye de faire ça, ça me fait une incompatibilité de type.

Voilà, je vous remercie à l'avance,
Youri
 

Discussions similaires

Statistiques des forums

Discussions
312 347
Messages
2 087 502
Membres
103 563
dernier inscrit
samyezzehar