エクセルで遊べる「まるばつゲーム」の作り方【Vba ゲーム】

 

スーパー暇人プログラマー の Take です。

半年ぶり?ぐらいに Excel でゲームをつくりました。

それは、、、

小学校とかで友人とよくやった「あの〇と×を書くだけの究極の頭脳戦」である「まるばつゲーム」です!!!!

 

 

この記事をご覧の方の中には、懐かしすぎて涙が止まらない人もたくさんいるのではないでしょうか?

この記事では、「あの〇と×を書くだけの究極の頭脳戦」である「まるばつゲーム」の遊び方と作成方法をご紹介します!!

※ もし「まるばつゲーム」が好きすぎて仕方ない人は、ぜひ下記ボタンからダウンロードしてやってみてください!

 

 

スポンサーリンク

遊び方

まず「ゲーム開始」ボタンを押下します。

その後、下記画面の赤枠にクリックすると、自動で「〇」か「×」が入力されます。

※ 先行は「〇」後攻は「×」が入力されます。

 

 

あとは、同じ記号(「〇」か「×」)が三つそろえば勝ちという

シンプル中のシンプルなまるばつゲームするだけです。

勝敗が付いた時点でゲームが終了し、メッセージが表示されます。

※ 中断したい場合は「ゲーム終了」を押下してください。

「まるばつゲーム」の作り方

ここからプログラムの専門用語がでてきますので、よくわからない人も適当に眺めてください。

まず、Excel Vba という、Excel のプログラミング言語で作成します。

定数定義

シート情報、まるばつゲームのボード情報、その他メッセージ等をここで一括に登録しちゃいます。

ソースコード

 

ボタンが押されたときに処理するマクロ

Excel 上のシートにある「ゲーム開始」「ゲーム終了」ボタンが押されたときに処理するマクロの定義です。

ボタンごとにそれぞれ下記のように動作します。

ボタンと処理が起動するマクロ
  1. 「ゲーム開始」 : startGame プロシージャ
    → シートの初期化 + N列目に「ゲーム開始」メッセージ追加
  2. 「ゲーム終了」 : endGame プロシージャ
    → N列目に「ゲーム終了」メッセージ追加
実はこのマクロ、こっそり「非表示」セルがあります(N列目)。
ここで、ゲームが開始しているか、終了しているかを判断しています。
つまり「ゲーム開始」というメッセージがあればゲーム中、「ゲーム終了」とあれば、ゲーム終了となります。

また、上記画面の「ゲーム開始」というメッセージの下に「0」という文字がありますが、

これは盤上の「〇と×」の数を示します。

※ 上記画面では、「〇と×」が「0」個のため、「0」と表示されています。

ソースコード

 

マウスクリック等のシートの操作

下記ソースコードで、ごちゃごちゃ書いていますが、処理はシンプルです。

処理内容
  1. 選択したセルに「〇」か「×」を置く。
    → クリック数が偶数なら「〇」、奇数なら「×」とする
  2. 勝敗が付いたかを確認
    → 同じ記号(つまり「〇」か「×」)が縦、横、斜めに並んでいるか
    → 3つ並んでいるか、勝敗が付かない(盤上すべてに記号が配置された)なら処理終了

※ もしシート上のクリックをどうやって検知しているかわからない人は下記リンクをどうぞ!

ソースコード

 

最後に

いかがでしょうか?

私はこの「まるばつゲーム」をつくるのに一時間くらいかかりました。

たぶん、できる人はもっと早くできると思います。

 

もし「〇と×の究極の頭脳戦」である「まるばつゲーム」を Excel でやりたくて仕方ない方がいましたら、

ぜひ下記ボタンからダウンロードしてやってみてください!

ではでは。
スポンサーリンク
おすすめの記事