Jouer au morpion avec Excel

Écrit par

dans

,

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.

Commentaires

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *