Bonjour,
Je suis actuellement en stage dans une entreprise et il m'est demandé de développer un programme sous access.
Ce logiciel doit être déployé sur plusieurs pc et je vous explique donc mon problème, n'étant que débutant en VBA, ( mais connaissant les bases du c ).
J'ai inclut une 50ène d'image, ainsi qu'une 20ène de menus déroulants sur la partie formulaire et doit jouer sur l'affichage de ceux ci en fonction de différents paramètres.
J'ai donc simplifié, usé et abusé de If/else sur la mise à jour de certains de mes menus déroulants et le programme fonctionne pour l'instant mais au niveau du code c'est plus que lourd, et au niveau de la maintenance cela risque de poser des soucis pour certains sur la durée ( 2200 lignes pr l'instant ) , même si je m'y retrouve.
Je voudrais donc passer de mes structures très lourdes:
pour simplifier:
A une structure plus simple à modifier:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30 Dim Valeur image1.visible = false image2.visible = false image3.visible = false ... image50.visible = false ... 'entrée de la valeur par l'utilisateur If valeur = 1 then image1.visible = true else if valeur = 2 then image2.visible = true else if valeur = 3 image3.visible = true ... else if valeur = 50 image50.visible = true end if ... end if end if end if
ou directement Image[valeur].visible = true
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 dim i as integer dim valeur image1.visible = false image2.visible = false image3.visible = false ... image50.visible = false ... 'entrée de la valeur par l'utilisateur for i = 1 to 50 If Valeur = i then Image[i].visible = true end if next i end sub
Le fait est que je ne sais pas comment modifier le nom image ( pareil pour mes menu déroulants ) en image1 ou image2 en fonction de la valeur d'une variable qui serait 1 ou 2.
Impossibilitée de la faire via un dossier contenant les images non plus car ce programme devra se mettre sur différents ordinateurs et donc les images sont intégrés.
Je sais que lorsque je fesait du C j'utilisais souvent cela mais en VBA je ne sais pas du tout comment le faire et si quelqu'un pouvait m'en dire plus, je lui serait reconnaissant.
Merci beaucoup.
Ps: J'ai cherché depuis plusieurs jours sur les différents forums de VBA mais impossible à trouver, je précise que je suis débutant.
Partager