Le démineur

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 !

Bonjour Hervé S.
merci beaucoup, ça fait longtemps que je rêve d'un démineur hors ligne, comme à l'époque...
Seule idée d'amélioration qui me vient: pourrait-on faire en sorte que le double clic découvre les cellules ?
à la place du point d'interrogation...
Un énorme merci, je m'en sers déjà !
 
Oh, je suis content d'avoir réalisé votre rève. Mais, j'espère que vous avez d'autres rêves (🍧,👠, 🏖️,...)
Très bonne idée le double clic ! Vous trouverez ci-dessous le fichier avec le double clic pour découvrir les cellules.
A mon tour de vous faire une suggestion.... pouvez-vous, s'il vous plait, donner une note au fichier ? 😀 Merci.
 

Pièces jointes

Bonjour Hervé S.
ne vous inquiétez pas pour moi: j'ai plein d'autres rêves à réaliser encore 😎
Merci beaucoup pour la nouvelle version, c'est plus agréable ! Pour les notes, j'ai enfin trouvé comment faire ! C'est pas très intuitif !
Très bonne fin d'année à vous !
 
Bonjour Hervé S.
merci beaucoup, ça fait longtemps que je rêve d'un démineur hors ligne, comme à l'époque...
Seule idée d'amélioration qui me vient: pourrait-on faire en sorte que le double clic découvre les cellules ?
à la place du point d'interrogation...
Un énorme merci, je m'en sers déjà !
Le clic et le clic droit serait plus ergonomique ... Ensuite, il suffit sur chaque évènement de repositionner la sélection en dehors de la grille.
Je fais cela dans tous mes projets et cela fonctionne bien.
Remarque très tardive, mais je trouve cela dommage de ne pas avoir une meilleure ergonomie sur cette réalisation qui reste par ailleurs une très bonne réalisation...
 
Le clic et le clic droit serait plus ergonomique ... Ensuite, il suffit sur chaque évènement de repositionner la sélection en dehors de la grille.
Je fais cela dans tous mes projets et cela fonctionne bien.
Remarque très tardive, mais je trouve cela dommage de ne pas avoir une meilleure ergonomie sur cette réalisation qui reste par ailleurs une très bonne réalisation...
Dans toutes mes réalisations, je tiens à avoir la meilleure ergonomie possible. Donc, votre suggestion m'intéresse. Mais, je ne vois pas ce que vous voulez dire. Désolé.
 
Dans toutes mes réalisations, je tiens à avoir la meilleure ergonomie possible. Donc, votre suggestion m'intéresse. Mais, je ne vois pas ce que vous voulez dire. Désolé.
Bonjour Hervé !

Je pensais à la version de Windows, ou le clic de la souris sert à découvrir la zone et le clic droit à poser l'emplacement d'une bombe. Dans votre version, il faut cliquer sur la cellule puis sur l'image de l'action que l'on désire effectué sur la cellule active.
J'ai voulu vous envoyer une version modifiée mais le problème c'est que dans tout votre code vous utilisez la méthode Select, cela fait trop de modifs pour ma part et mon code fait planter Excel.

Oublions ma remarque, par contre sur cette dernière version j'ai une erreur lorsque je découvre une cellule avec un mine au lieu du message Perdu :
+ Erreur d'exécution 1004 : Erreur dans la Procédure partie du module partie à la ligne 62 commençant par Selection.Replace
Je travaille sur une version Excel 2016.

Est-ce que vous avez cette erreur ?

Bonne journée !
 
Je vous remercie pour vos conseils et votre travail, même s'il n'a pas aboutit.
Sur ma version, lorsque je clique sur une mine, j'ai le message "Perdu", mais pas de message d'erreur.
 
Je vous remercie pour vos conseils et votre travail, même s'il n'a pas aboutit.
Sur ma version, lorsque je clique sur une mine, j'ai le message "Perdu", mais pas de message d'erreur.
Bonsoir,

C'est étrange qu'il n'y ait pas d'erreur car d'après l'aide de learn.microsoft.com, il y a un argument en trop dans la fonction appelée :
expression. Replace (What, Replacement, LookAt, SearchOrder, MatchCase, MatchByte, SearchFormat, ReplaceFormat)

Selection.Replace What:="v", Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False, FormulaVersion:=xlReplaceFormula2

En enlevant le dernier argument cela fonctionne.

Un mystère à confier à Murder & Scully 😉
Gillian Anderson Eye Roll GIF
 
Bonjour à tous

@Lu76Fer
Remarques juste en passant :

1) Tu peux raccourcir ton code sur les bordures en remplaçant

VB:
Sub bordure(zone As Range)
   RaffraichirEcran False

    zone.Borders(xlDiagonalDown).LineStyle = xlNone
    zone.Borders(xlDiagonalUp).LineStyle = xlNone
    With zone.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With

   RaffraichirEcran True
End Sub


Par ceci

VB:
Sub bordure(zone As Range)
    RaffraichirEcran False

    zone.Borders(xlDiagonalDown).LineStyle = xlNone
    zone.Borders(xlDiagonalUp).LineStyle = xlNone
   
    zone.Borders.LineStyle = 1

    RaffraichirEcran True
End Sub

2) Si j'ai bien vu tu devrais verrouiller les mines que l'utilisateur a identifié (clic droit) pour ne pas pouvoir faire de clic dessus sans les désactiver d'abord c'est à dire re clic droit pour enlever la mine ....

Autrement super .....
 
Bonjour à tous

@Lu76Fer
Remarques juste en passant :

1) Tu peux raccourcir ton code sur les bordures en remplaçant

VB:
Sub bordure(zone As Range)
   RaffraichirEcran False

    zone.Borders(xlDiagonalDown).LineStyle = xlNone
    zone.Borders(xlDiagonalUp).LineStyle = xlNone
    With zone.Borders(xlEdgeLeft)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeTop)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlEdgeRight)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlInsideVertical)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With
    With zone.Borders(xlInsideHorizontal)
        .LineStyle = xlContinuous
        .ThemeColor = 1
        .TintAndShade = -0.14996795556505
        .Weight = xlThin
    End With

   RaffraichirEcran True
End Sub


Par ceci

VB:
Sub bordure(zone As Range)
    RaffraichirEcran False

    zone.Borders(xlDiagonalDown).LineStyle = xlNone
    zone.Borders(xlDiagonalUp).LineStyle = xlNone
  
    zone.Borders.LineStyle = 1

    RaffraichirEcran True
End Sub

2) Si j'ai bien vu tu devrais verrouiller les mines que l'utilisateur a identifié (clic droit) pour ne pas pouvoir faire de clic dessus sans les déactiver

Autrement super .....
Bonjour Phil !
Il faut rendre à César ... Ce n'est pas mon code mais celui de Hervé S, j'ai juste modifié son code pour ne plus utiliser de Select (Sur Feuille et Range) et j'ai ajouté la prise en charge du clic et du clic droit pour rendre l'interaction plus spontanée !
Ah oui, j'ai ajouté la fonction RaffraichirEcran pour que son code soit compatible avec toutes les version Excel car il est préférable par expérience de proscrire l'utilisation de la propriété ScreenUpdating à partir d'Excel v13.
Merci tout de même 😉

PS : à voir avec l'intéressé, si tout cela l'intéresse ...
 
- 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

Retour