Bonjour à tous,

J'ai fait un jeu Plants vs Zombies en VBA avec un jeu de plateau Excel, depuis le début j'ai travaillé avec des noms, c'est à dire que dans les cellules pour les plantes on a "P11", "P12" etc. et pour les zombies on a "Zombie 1" etc.

J'aimerai désormais afficher des images à la place de ces textes, j'ai alors fait 2 subs que vous retrouverez ci-dessous pour effacer mes images à chaque tour de jeu et les redessiner, mais un problème se pose...
Dans la Sub pour dessiner les plantes je n'ai mis qu'une sorte d'une plante, c'est normal, je ne l'ai pas finie

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
Sub Suppression_Shapes()
    'supression de toutes les shapes
    'dont le point bas droit se trouve sur les colonnes 4 à 13
    Dim boutons As Variant, s As Shape
    boutons = Array("Button 1", "Button 2", "Button 3", "Button 4")
    For Each s In ActiveSheet.Shapes
        If IsError(Application.Match(s.Name, boutons, 0)) Then s.Delete
    Next
 
End Sub
 
Sub Dessiner_Shapes()
    'dessine les images là où elles doivent aller
    For i = 4 To 13
        For j = 2 To 7
            Cells(j, i).Select
            If Cells(j, i).Value = "P11" Or Cells(j, i).Value = "P12" Or Cells(j, i).Value = "P13" Or Cells(j, i).Value = "P14" Then
                ActiveSheet.Pictures.Insert(Sheets("Pions").Range("D2").Value).Select
            End If
        Next j
    Next i
End Sub
Pour déplacer une plante dans mon jeu, on doit cliquer sur la cellule où la plante se trouve, sauf que si une image s'y trouve, on clique sur l'image et non la cellule donc la cellule n'est pas prise en compte pour la déplacer...

Des solutions ? Par avance merci !