voila, j'ai un problème, je voudrais afficher une image en fonction du résultat de la cellule,
Dans mon dossier, je voudrais que lorsque le classement change, les logos des équipes suivent aussi.
merci de m'aider
voila, j'ai un problème, je voudrais afficher une image en fonction du résultat de la cellule,
Dans mon dossier, je voudrais que lorsque le classement change, les logos des équipes suivent aussi.
merci de m'aider
Bonjour,
Une piste !
Dabords, il faut que tu nomme tous tes logos du nom du club auquel ils appartiennent, pour cela, tu copie le nom du club dans la cellule et tu le colle dans la zone de nom (en haut à gauche) et tu valide par "Entrée", ceci dans la feuille "Logos". Ensuite, il faut que tes lignes dans "Ligue" et "Logos" est la même hauteur pour que les logos soient bien à leurs place, puis tu mets ce code dans le module de la feuille "Ligue".
Comme je n'ai aucune idée de la façon dont seront fait les modif de classement, à chaque modif dans la colonne E (E5 à E43) le code sera exécuté :
Hervé.
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61 Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, [E5:E43]) Is Nothing Then PlacerLogo End If End Sub Sub PlacerLogo() Dim FeLogos As Worksheet Dim FeLigue As Worksheet Dim PlageLogos As Range Dim PlageLigue As Range Dim CelLogos As Range Dim CelLigue As Range Dim S As Shape 'défini les variables feuilles et plages Set FeLogos = Worksheets("Logos") Set FeLigue = Worksheets("Ligue") Set PlageLogos = FeLogos.[C5:C24] Set PlageLigue = FeLigue.[E5:E43] 'gèle le rafraîchissement de l'écran Application.ScreenUpdating = False 'supprime tous les logos de la feuille "Ligue" For Each S In FeLigue.Shapes S.Delete Next S 'parcour les clubs en feuille "Logos" et les recherche 'dans la feuille "Ligue", une fois trouvé, copie le logo 'correspondant et le colle dans la cellule de la feuille '"Ligue" 'Attention, pour ça, il faut que les logos est le nom du club 'auquel ils appartiennent et que les hauteur de lignes des deux 'feuille soient les mêmes For Each CelLogos In PlageLogos Set CelLigue = PlageLigue.Find(CelLogos, , xlValues, xlWhole) If Not CelLigue Is Nothing Then FeLogos.Shapes(CelLigue).CopyPicture FeLigue.Paste CelLigue.Offset(0, -1) End If Next CelLogos Application.ScreenUpdating = True End Sub
merci, je vais essayer cela, mais tu me dis de "mettre ce code dans le module de la feuille "Ligue"".
ou se trouve le module ?
c'est très gentil de ta part de m'aider
Bonjour,
Tu fais Alt+F11 et tu es dans le VBE, sur ta gauche en haut tu as une fenêtre avec les noms des feuilles de calcul et entre parenthèses tu dois avoir le nom "Ligue" et bien tu double-clique dessus et le module correspondant à cette feuille s'affiche dans la zone de droite, là, tu colle le code et tu change une valeur dans la colonne des noms des clubs.
Hervé.
excuses moi encore, mais je valide comment et peux tu me le montrer au pas à pas, je ne suis pas trop expert en excel
Bonjour,
Je te retourne ton classeur avec le code
Hervé.
Partager