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) :
Je vous remerci à l'avance pour votre aide,
Youri
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: