Variable, dénomination & rappel de variable
miko96
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
f894009 Messages postés 17277 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cherche une solution (qui doit surement être toute simple) au problème suivant:
J'ai plusieurs variables qui sont dissociées par un chiffre:
Co1D, Co2D, Co3D...
Je souhaite utiliser mes variables comme limites dans une boucle for en allant par exemple de Co1D à Co3D.
Sauf que je souhaite mettre comme donnée d'entrée dans mon tableau seulement les chiffres 1 et 3. Mettons en A1 et A2
J'ai tenté ça:
Co1D=123
Co2D=124
Co3D=300
Debut=cells(1,1).value
Fin=cells(2,1).value
A="Co"& Debut&"D"
B="Co"&Fin&"D"
For i=A to B
...
Le problème, c'est que A et B sont des variables texte. Je ne sais pas comment faire pour que " "Co"& Debut&"D" " corresponde à ma variable!
Merci par avance de votre aide!
Je cherche une solution (qui doit surement être toute simple) au problème suivant:
J'ai plusieurs variables qui sont dissociées par un chiffre:
Co1D, Co2D, Co3D...
Je souhaite utiliser mes variables comme limites dans une boucle for en allant par exemple de Co1D à Co3D.
Sauf que je souhaite mettre comme donnée d'entrée dans mon tableau seulement les chiffres 1 et 3. Mettons en A1 et A2
J'ai tenté ça:
Co1D=123
Co2D=124
Co3D=300
Debut=cells(1,1).value
Fin=cells(2,1).value
A="Co"& Debut&"D"
B="Co"&Fin&"D"
For i=A to B
...
Le problème, c'est que A et B sont des variables texte. Je ne sais pas comment faire pour que " "Co"& Debut&"D" " corresponde à ma variable!
Merci par avance de votre aide!
A voir également:
- Variable, dénomination & rappel de variable
- Variable objet ou variable de bloc with non définie - Forum VB / VBA
- Le fichier contient un programme écrit en python. le programme construit un mot secret mais il ne l'affiche pas. modifiez ce programme afin que à chaque itération de la boucle : la variable a augmente de 2 la variable b diminue de 1 ajoutez une instruction pour faire afficher le mot secret construit. quel est ce mot secret ? ✓ - Forum Python
- Vba range avec variable ✓ - Forum VB / VBA
- Variable d'environnement temp ✓ - Forum Microsoft Office
- Impossible de créer le fichier de travail. vérifiez la variable d'environnement temp - Forum Microsoft Office
2 réponses
Bonjour,
Marche pas comme ca. Utilisez un tableau:
ex:
Option Base 1 'tout en haut de la fenetre
Marche pas comme ca. Utilisez un tableau:
ex:
Option Base 1 'tout en haut de la fenetre
Sub test()
Dim CoD(3) 'tableau de 1 a 3
CoD(1) = 123
CoD(2) = 124
CoD(3) = 300
A = CoD(Cells(1, 1).Value)
B = CoD(Cells(2, 1).Value)
For i = A To B
Next i
End Sub
Bonjour,
Une variante à la proposition de f894009 (salutations au passage), est de passer par une Ch'tite fonction :
Une variante à la proposition de f894009 (salutations au passage), est de passer par une Ch'tite fonction :
Option Explicit
Dim Arret As Boolean
Sub test()
Dim Debut As Integer, Fin As Integer, i As Long, Pas As Integer
Arret = True
Debut = Boucle(Cells(1, 1).Value)
Fin = Boucle(Cells(2, 1).Value)
Pas = 1
If Arret = False Then MsgBox "Au moins une des deux valeurs de boucle est invalide": Exit Sub
If Fin < Debut Then Pas = -Pas 'permet de boucler de 300 à 124 par exemple (Step -1)
For i = Debut To Fin Step Pas
'Debug.Print i
' Bla bla
Next i
End Sub
Function Boucle(Valeur As Integer)
Select Case Valeur
Case 1
Boucle = 123
Case 2
Boucle = 125
Case 3
Boucle = 130
Case 4
Boucle = 135
'etc
Case Else
Arret = False
End Select
End Function
C'est ce que je voulais éviter de faire il y a une deuxieme solution, toujours avec un tableau, mais definition differente.
Vous pouvez aussi mettre les valeurs dans les cellules au lieu de l'indice du tableau, c'est plus simple.