Excel マクロを使った スロットゲームの作成

これをプログラムで実現させるのがマクロです。
Excel マクロを使った
VBA とは、Visual Basic for Applications の
略称で、Excel で採用されているプログラム言語
スロットゲームの作成
です。
マクロと VBA は異なるものではありません。マ
クロの自動記録は、プログラミング言語 VBA の文
東 知駿
小野寺郁海
法に則って記録されるため、そのコードはマクロ
で記録された VBA プログラミングコードといえま
す。VBA を知ることにより、マクロで記録された
1. まえがき
コードを自在に扱うことができるようになりま
Excel を皆さんは計算できるだけのフリーソフ
す。
トだと思っている方が多いのではないのでしょ
うか。ですが、Excel は計算できるだけのフリー
ソフトではありません。
3.研究内容
Excel にはデータ、計算、売上表、財務諸表、
まず最初に ExcelVBA マクロの教材を見なが
家計簿、住所録などいろいろな機能がありますが、
ら簡単なプログラムから作っていくことにしま
Excel を使ってプログラムを組むことによってそ
した。その教材は基礎的なものは詳しく記載され
れらの作業を自動で素早く終わらせることがで
ておらず、難しいプログラムばかりだったので、
きます。そういった機能を使えばゲームを作る事
手始めに http://ateitexe.com/basic-q-and-a/とい
もできます。今回はそのエクセルのプログラム機
うサイトを使って、簡単なプログラムから練習し
能を使ってスロットマシンのゲームを作成しま
ていきました。そしてそのプログラムを通し基礎
した。
力の向上をはかったのですが、それで ExcelVBA
は奥が深くシューティングゲームを作りたかっ
たのですが、現状では作ることができないので初
心者でも比較的簡単に作ることができるスロッ
トゲームを作ることにしました。
スロットゲームの仕様としては、「スタート」
をクリックすると3列あるスロットの絵柄がか
わり、各絵柄の下にある「ストップボタン」を押
すとリールが停止し、3つの絵柄が揃えば「当た
図1
り」、揃わなければ「はずれ」と表示されます。
作業の手順としては始めにスロットゲームの画
面のレイアウトから作成しました。
2.原理
ExcelVBA を使うのですが、マクロとは、Excel
が標準で備えている「操作の自動記録・実行機能」
のことです。Excel で作業しているとき、同じ操
作を繰り返すことがあります。
例えば、1と打ったら右下に矢印なのを引っ張
れば、111111と連続した数字が表れますが
1
らなかったので画像のサイズは多少違いますが、
プログラムはゲームとして成り立つレベルまで
完成に持っていくことができました。
4.まとめ
今回、ExcelVBA に挑戦してみて、7ヶ月とい
う短い間集中してゲーム作成に尽力を注ぎ込み
図2
ました。僕たちは今回、スロットゲームを作った
のですが、Excel を使ったゲームとして図 4~図 6
に示すような RPG ゲーム,パズルゲーム,シュー
上記の図2にあるようにゲーム画面の背景制作
ティングゲーム
をしている風景です。この背景制作も Excel のシ
ートをつかって制作しています。
画像を表示する際の設定や、ボタンの配置、位
置設定などもすべて Excel で行っています。
画面のレイアウトが完成した後は、ペイントを
使ってスロット画像の制作をしました。プログラ
ムを実行させる際に画像の表示形式がPNG,G
IF形式では動かず、JPEG形式でないとプロ
グラム画面に画像が表示されないということが
あり一時はとても苦労しました。
最終的な調整としてリールの回転速度の変更
や「初級」
、
「中級」
、
「上級」など難易度設定を加
図4
えました。
図3
図5
上記の図3が最終的なプログラムの実行画面
です。時間の都合上画像のサイズ調整まで手が回
2
取り掛かるのに少し時間がかかりました。
そして作業に取り掛かると、入力ミスが多くて
バグばかりあったけど、頑張って制作に励みまし
た。
結果、スロットゲームを完成させることができま
した。
Excel でのスロットゲームの背景の画像がちょ
っとサイズが変だったりしてるので、クオリティ
が低くなりました。
次にゲームを作成するときは、時間に余裕を持
図6
って、計画的にゲームを作成し、またプログラム
についてもっと理解していきながら作成してい
きたいです。(東)
といったようなさまざまなジャンルのゲームを
作ることができます。
普段僕たちは、「Excel」を計算表としてしか使
っていなかったので、このような幅広いゲーム
6.参考文献
が Excel で作成することができるというのは驚き
(1)ExcelVBA アクションゲーム作成入門
http://www1.plaza.or.jp/chilada/
でした。
(2)これから Excel のマクロを始めたいという方
なにより最初、何からやっていいのかわからな
かったので、参考文献2のサイトはとても役に立
に!簡単な練習問題を作りました。
http://ateitexe.com/basic-q-and-a/
ちました。
皆さんも、ExcelVBA をやるときは(2)のサイト
(3)ExcelVBA 入門講座
を利用したり、(1)の本を買ってみるとよいかもし
http://excelvba.pc-users.net/
(4)エクセル VBA マクロ
れません。
http://www.excel-vba.net/
(5)Excel Q&A さろん(VBA)
http://excelfactory.net/excelboard/excelvba/e
5.あとがき
今回課題研究で ExcelVBA をやってみての感
xcel.cgi
想は普段とはまったく違った Excel の使い方があ
ることに驚きました。マクロを組むことによって
作業効率もまったく変わってくるので日常生活
に取り入れることができればとても便利なもの
だと感じました。
また、スロットの画像制作に時間をかけ過ぎて
しまい最終的に表示画面の画像サイズの調整を
する時間が無くなってしまったのが今回の自分
の反省点だと感じました。
(小野寺)
今回の研究では VBA 言語を使用しました。授
業では学習してなかったので、VBA 言語を学習し
ながらゲームを作成しました。そのため、作業に
3