Chargement en cours

Jouer au morpion avec Excel

Voici un exemple de comment créer un jeu de morpion dans Excel en utilisant des macros VBA :

  1. Ouvrez un nouveau classeur Excel et enregistrez-le avec un nom approprié, comme « Jeu de Morpion ».
  2. Ouvrez l’éditeur de macro en cliquant sur « Outils » dans le menu déroulant, puis sur « Macro » et enfin « Éditeur de macro ».
  3. Dans l’éditeur de macro, créez une nouvelle macro en cliquant sur « Créer » et en donnant un nom à votre macro, par exemple « Jouer ».
  4. Ajoutez les commandes VBA suivantes pour créer les fonctionnalités de votre jeu :
Sub Jouer()

Dim tableau(2, 2) As String 'tableau 3x3 pour le jeu
Dim tour As Integer 'compteur pour les tours
tour = 1 'initialisation

For i = 0 To 2 'initialisation du tableau avec des espaces vides
    For j = 0 To 2
        tableau(i, j) = " "
    Next j
Next i

Do
    'affichage du tableau
    For i = 0 To 2
        For j = 0 To 2
            Cells(i + 1, j + 1) = tableau(i, j)
        Next j
    Next i

    'demande de coordonnées pour le prochain coup
    Dim x, y As Integer
    x = InputBox("Entrez la ligne (0-2) pour le prochain coup :")
    y = InputBox("Entrez la colonne (0-2) pour le prochain coup :")

    'vérifie si la case est déjà jouée
    If tableau(x, y) <> " " Then
        MsgBox "Case déjà jouée, choisissez une autre case."
    Else
        If tour Mod 2 = 1 Then 'tour du joueur 1
            tableau(x, y) = "X"
        Else 'tour du joueur 2
            tableau(x, y) = "O"
        End If
        tour = tour + 1 'incrémente le tour
    End If

    'vérifie si un joueur a gagné
    If (tableau(0, 0) = tableau(0, 1) And tableau(0, 1) = tableau(0, 2) And tableau(0, 0) <> " ") Or _
    (tableau(1, 0) = tableau(1, 1) And tableau(1, 1) = tableau(1, 2) And tableau(1, 0) <> " ") Or _
    (tableau(2, 0) = tableau(2, 1) And tableau(2, 1) = tableau(2, 2) And tableau(2, 0) <> " ") Or _
    (tableau(0, 0) = tableau(1, 0) And tableau(1, 0) = tableau(2, 0) And tableau(0, 0) <> " ") Or _
    (tableau(0, 1) = tableau(1, 1) And tableau(1, 1) = tableau(2, 1) And tableau(0, 1) <> " ") Or _
    (tableau(0, 2) = tableau(1, 2) And tableau(1, 2) = tableau(2, 2) And tableau(0, 2) <> " ") Or _
    (tableau(0, 0) = tableau(1, 1) And tableau(1, 1) = tableau(2, 2) And tableau(0, 0) <> " ") Or _
    (tableau(0, 2) = tableau(1, 1) And tableau(1, 1) = tableau(2, 0) And tableau(0, 2) <> " ") Then
        MsgBox "Joueur " & (tour - 1) Mod 2 + 1 & " a gagné !"
        Exit Do 'sortie de la boucle principale
    ElseIf tour > 9 Then 'si toutes les cases sont remplies
        MsgBox "Match nul !"
        Exit Do 'sortie de la boucle principale
    End If
Loop

End Sub

Remarque : Ce script est une base pour un jeu de morpion, il peut être amélioré et personnalisé selon les besoins.

Avatar photo

Dans l'informatique depuis l'âge de 11 ans, c'est ma passion et mon métier. Retrouvez quelques astuces dont j'ai eu moi-même besoin et des news qui m'ont interpelées. Enfin, quand j'ai le temps de publier ^^

Laisser un commentaire