Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

aemireille

XLDnaute Nouveau
Bonjour! Je suis nouvelle sur ce forum et débutante, je dois programmer un jeu en vba sur excel pour mon cours d'informatique et je rencontre un problème qui m'empêche d'avancer!
je voudrais programmer une variable pour pouvoir l'utiliser dans des expressions comme ceci :


Sub variables()

Dim s As Integer

End Sub



Private Sub UserForm_Initialize()

x11.Picture = LoadPicture("C:\Users\alice\Desktop\im1.jpg ")
x19.Picture = LoadPicture("C:\Users\alice\Desktop\im2.jpg ")
x99.Picture = LoadPicture("C:\Users\alice\Desktop\im1.jpg ")
x91.Picture = LoadPicture("C:\Users\alice\Desktop\im2.jpg ")
For s = 12 To 14
x & s & .Picture = LoadPicture("C:\Users\alice\Desktop\im3.jpg ")

je voudrais pouvoir remplacer s dans mon expression par des nombres allant de 11 à 99 , et cela ne marche pas avec & s &, pour pouvoir utiliser x12, x13, en faisant varier le nombre s car les x11, x12 sont différentes zones d'images... je pensais que ça marcherait en définissant s comme variable au début, mais cela ne marche pas, pourriez vous m'aider?? ou me dire ce qui ne fonctionne pas dans le code?
merci beaucoup!
 
Re : variable en vba

Bonjour
Si les images sont dans un userform, elle font forcément partie de sa collection Controls.
Si elles sont dans une feuille de calcul, elles sont probablement les propriétés Object de membres de sa collection OLEObjects.
À vérifier. Ça ne répond certes pas à la question…
 
Re : variable en vba

Merci pour cette réponse rapide! désolée mais je ne comprends pas?!
les zones images dans le userform sont renommées x11, x12, etc... j'ai 81 zones images. en fait je m'en sers comme plateau et du coup je voudrais créer une variable pour pouvoir réaliser des actions sur toutes les images de x11 à x19 par exemple en mettant juste x[variable] et dire que cette variable va de 1 à 9... c'est ce que je voulais indiquer: télécharger l'image 3 pour les zones d'image X11, X12, ..., X19
Mais je ne sais pas comment faire pour que le programme comprenne que ce qui suit x est une variable, et qu'il l'applique..? ou alors ce n'est pas en créant une variable?
 
Re : variable en vba

Bonjour à tous

en complément de ce qu'a dit Danreb :
For s = 11 To 19
Me.Controls("x" & s).Picture = LoadPicture("C:\Users\alice\Desktop\im3.jpg ")

ou
For s = 1 To 9
Me.Controls("x1" & s).Picture = LoadPicture("C:\Users\alice\Desktop\im3.jpg ")


Bonne suite
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
786
Retour