エクセルでゲームを作りたい!
関数しか使えないけど何か作りたい!
今回はじゃんけんゲームを作りましょう!
前回、関数を使ったまるばつゲームの作りかたを紹介しました。
でも、まだ関数だけでできる手作りゲームがあります。
「じゃんけんゲーム」です。
私は、学生時代から数えて15年以上Excelを使ってきた経験を簡単に「遊び、学び」に活かす方法を日々考えています。
ちょっとした工夫でExcelでもゲームを自作できることに気づき、作り方を発信しています。
今回作る「じゃんけんゲーム」は、「グー」、「チョキ」、「パー」という文字だけで作りますが、CPUの手と勝敗を自動で行うことができるちゃんとしたゲームです。
「自動」というと「マクロやVBAを使うのでは?」と思うかもしれないですが、一切使いません!
この記事のやり方では、IF、COUNTIF、RANDBETWEENの3つの関数だけで「じゃんけんゲーム」を実現できます。
記事を読んでいただき、ありがとうございます。
しかし、こんなことを思っている方はいませんか?
「ゲームを作るVBAを知りたいんじゃない、仕事でつかえるVBAを知りたいんだ!」
「VBAを基礎から体系的に勉強したい」
「でも、勉強するまとまった時間はないし、お金もない!」
そんな方には、Youtuberとしても有名なUdemy講師のエクセル兄さんが教える
「Excel VBA エキスパート認定への道 ~マクロ初心者から資格試験レベルへ &7つの自動化 マクロ を作る15時間」の講座がおすすめです。
この講座の良いところは4つ。
- 仕事でつかえるVBAを学べる
- スクールに通うより圧倒的に安い
- 買い切り
- 隙間時間で勉強できる
- 一度買えば、何度でも見れる
VBAを仕事で活用できるレベルになりたいという方は↓のボタンから購入し、勉強しましょう。
まずは準備!
まずは、タイピングの量をなるべく減らすためにリストを作ります。
グー、チョキ、パーのリストを作る
B2~B4に「グー、チョキ、パー」を入力。
C2~C4に「1,2,3」を入力。
これで「グー、チョキ、パー」に対して「1,2,3」が対応します。
勝ち、負け、あいこのリストを作る
続いて、「勝ち、負け、あいこ」のリストを作ります。
E2~E4に「勝ち、負け、あいこ」を入力。
F2~F4に「a,b,c」を入力します。
これで「勝ち、負け、あいこ」に対して「a,b,c」が対応します。
プレイヤーの入力欄を作成
A7に「あなた」と入力
B7のセルにドロップダウンを設定します。
B7セルを選択したのち、「データの入力規則」をクリックします。
データの種類にリストを選んだら、元の値に「B2~B4」を選べばリストの設定完了。
C7に「B7にグーが表示されたらC7に「1」、チョキが表示されたら「2」、パーが表示されたら「3」を表示する」ための関数を入力します。
できた関数は下記↓の通り
C7の関数:=IF(B7=B2,C2,IF(B7=B3,C3,C4))
これで自分の手を入力する欄ができます。
記事を読んでいただき、ありがとうございます。
しかし、こんなことを思っている方はいませんか?
「ゲームを作るVBAを知りたいんじゃない、仕事でつかえるVBAを知りたいんだ!」
「VBAを基礎から体系的に勉強したい」
「でも、勉強するまとまった時間はないし、お金もない!」
そんな方には、Youtuberとしても有名なUdemy講師のエクセル兄さんが教える
「Excel VBA エキスパート認定への道 ~マクロ初心者から資格試験レベルへ &7つの自動化 マクロ を作る15時間」の講座がおすすめです。
この講座の良いところは4つ。
- 仕事でつかえるVBAを学べる
- スクールに通うより圧倒的に安い
- 買い切り
- 隙間時間で勉強できる
- 一度買えば、何度でも見れる
VBAを仕事で活用できるレベルになりたいという方は↓のボタンから購入し、勉強しましょう。
CPU(相手)の出力を設定
A8に「CPU」と入力。
C8に「1~3の数字をランダムに表示する」関数を入力します。
できた関数は下記↓の通り
C8の関数:=RANDBETWEEN(1,3)
これは「1~3の整数をランダムに表示する」という意味です。
B8に『もしC8に1が表示されたら「グー」、2が表示されたら「チョキ」、いずれでもなけらば「パー」を表示する』という関数を作ります。
できた関数は下記↓の通り
B8の関数:=IF(C8=C2,B2,IF(C8=C3,B3,B4))
これでCPUの手が自動で出力されます。
勝ち負け判定を設定
グー、チョキ、パーで場合分け
あなたが「グー」を出した場合、
CPUが「グー」だったら「あいこ」、「チョキ」だったら「あなたの勝ち」、「パー」だったら「あなたの負け」となります。
これをE7にIF文で表現していきましょう!
これと同じようにあなたが「チョキ」を出した場合、「パー」を出した場合の関数をE8、E9に作ります。
E7~E9にできた関数は下記↓の通り
E7の関数:=IF(AND($C$7=C2,$C$8=C3),F2,IF(AND($C$7=C2,$C$8=C4),F3,IF(AND($C$7=C2,$C$8=C2),F4,””)))
E8の関数:=IF(AND($C$7=C3,$C$8=C4),F2,IF(AND($C$7=C3,$C$8=C2),F3,IF(AND($C$7=C3,$C$8=C3),F4,””)))
E9の関数:=IF(AND($C$7=C4,$C$8=C2),F2,IF(AND($C$7=C4,$C$8=C3),F3,IF(AND($C$7=C4,$C$8=C4),F4,””)))
勝ち負け引き分けを判断するIF文を作ろう
最終的な勝敗の判定をF7に表示します。
F7には、E7~E8に『aがあれば「あなたの勝ち」』、『bがあれば「あなたの負け」』、『cがあれば「あいこ」』となるようにIF文を書きます。
できたIF文は下記↓の通り
F7のIF文:=IF(COUNTIF(E7:E9,F2),E2,IF(COUNTIF(E7:E9,F3),E3,E4))
3つの関数を駆使すればじゃんけんゲームが作れる!
今回は関数を駆使してじゃんけんゲームを作りました。
文字だけで少し味気ないですが、十分にゲームとして成立していると思います。
作り方は下記の通り
「グー、チョキ、パー」、「勝ち、負け、あいこ」のリストを作る
「あなた」、「CPU」の手を出力する
「あなた」、「CPU」の手を基に勝敗の判定をする
この記事の作り方を参考に自分でゲームを作ってみてください。
今回は以上です!
記事を読んでいただき、ありがとうございます。
しかし、こんなことを思っている方はいませんか?
「ゲームを作るVBAを知りたいんじゃない、仕事でつかえるVBAを知りたいんだ!」
「VBAを基礎から体系的に勉強したい」
「でも、勉強するまとまった時間はないし、お金もない!」
そんな方には、Youtuberとしても有名なUdemy講師のエクセル兄さんが教える
「Excel VBA エキスパート認定への道 ~マクロ初心者から資格試験レベルへ &7つの自動化 マクロ を作る15時間」の講座がおすすめです。
この講座の良いところは4つ。
- 仕事でつかえるVBAを学べる
- スクールに通うより圧倒的に安い
- 買い切り
- 隙間時間で勉強できる
- 一度買えば、何度でも見れる
VBAを仕事で活用できるレベルになりたいという方は↓のボタンから購入し、勉強しましょう。
コメント
コメント一覧 (2件)
ありがとね!きゃんパパ
正太さん こちらこそ記事を読んでいただき、ありがとうございます。お役に立てたら嬉しいです。