Bonjour à tous,
dans le cadre d'une application excel je dois présenter un tableau qui peut être trié par collonnes. Le tableau étant destiné à être locké en permanence et le niveau des utilisateurs étant moyen, j'ai fait le choix de leur présenter des CommandButton auxquel j'associe une image "flèche en haut", et "flèche en bas", histoire de laisser la chose intuitive.
J'associe donc à l'évènement worksheet.acivate le chargement d'une ImageList de la manière suivante :
tout en sachant que ListeImage est déclaré As ListImages, bien entendu.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 ListeImages.ListImages.Add , "imUp", LoadPicture("FlecheHaut.bmp") ListeImages.ListImages.Add , "imDown", LoadPicture("FlecheBas.bmp")
Ma première question est : ayant parcouru en long en large et en travers ma seule source d'informations sur le sujet à travers le web, à savoir ce tuto, je ne trouve pas de réponse basique à la question : est-il possible de définir des chemins relatifs? parce que l'erreur que j'obtiens jusqu'à maintenant est file not found, alors que les fichiers bmp se trouvent à la racine du classeur vous pouvez me croire.
j'associe donc la propriété "picture" d'un CommandButton (ici, CbTriColC) à un item de cette ImageList
d'autre part, je manque cruellement d'informations pour manipuler, par exemple, un item de la list avec son libellé (ici, "imDown"' par exemple). Je ne sais pas commentr faire, donc voici la méthode choisie :
évidemment, ça me crache une erreur, et la clarté des messages d'erreur de vba excel étant légendaire, je me remet à votre savoir/sagesse (cf. rayer la mention inutile) pour éclairer ma lanterne.
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 Public Sub CbTriColC_Click() If StopEvent Then Exit Sub Ini_Sub NomProc = "CbTriColC_Click" 'Gestion des erreurs (procédure en cours) If TP_Exploit Then On Error GoTo Erreur 'Si le bouton est en mode descendant If w_Tranches.CbTriColC.Caption = "down" Then w_Tranches.CbTriColC.Caption = "up" w_Tranches.CbTriColC.Picture = ListeImages.ListImages(1).Picture Else w_Tranches.CbTriColC.Caption = "down" w_Tranches.CbTriColC.Picture = ListeImages.ListImages(2).Picture End If Sortie: Fin_Sub Exit Sub Erreur: ' Gestion globale des erreurs Call ErreurGrave("CbTriColC_Click") GoTo Sortie End Sub
Merci.
Partager