プログラミング初心者がエクセルのみでゲームを作る方法について紹介します!

  • エクセルを使ったプログラミングでゲームを自作できるって本当?
  • プログラミング初心者でもかんたんに作成できるゲームを知りたい!

こんな疑問にお答します。

エクセルというと表計算のイメージが強いと思います

しかし、エクセルを使ったプログラミングでゲームを作成することが可能です。

本稿では、

  • エクセルでゲームを自作してみたい方
  • かんたんなゲームから覚えて徐々にスキルアップしたい方

に向けて、

  • エクセルを使ったゲームの作り方
  • ゲーム開発におすすめのプログラミング言語
  • ゲーム開発におすすめの学習方法

をご紹介します。

かんたんなゲームを自作してみたい方はもちろん、将来ゲームプログラマーを目指している方はぜひご覧ください。



エクセルを使ったプログラミングでゲームを作る方法

エクセルでプログラミングゲームを作る方法について解説します。

ExcelとはMicrosoft社が提供するアプリケーションです。

エンジニアエンジニア

主に、表計算やデータベース作成を始めとした機能を持つことから、個人・企業問わずさまざまなシーンで使用されていますね。

「エクセルは表計算のアプリケーションなのにゲームが作れるの?」と感じる方も多いのではないでしょうか。

実は、エクセルの機能は多岐に渡るため、エクセルの機能を最大限活用することでゲームの作成が可能です。
エクセルでゲームを作成する際には「VBA」を活用します。

あのゲームもエクセル(VBA)プログラミングで作成できる

エクセルに搭載されている「VBA」を活用することでゲームの作成が可能です。

ここでは、VBAで作成できるゲームの例をご紹介します。

ブロック崩し

ブロック崩しゲームの画像
画像参照元:新興出版社啓林館 情報授業実践記録

まずは定番のブロック崩しゲームです。

例えば、ブロック崩しゲームを作成する際は、コンピュータに次のような命令を指定する必要があります。

  • スタートボタンを押すとゲームが開始する
  • ブロックを崩す
  • ラケットを左右に動かせる
  • ラケットにボールが当たると跳ね返る
  • ボールを壁で反射させる(壁の外に出ない)
  • すべてのブロックが消えたらゲーム終了

ブロック崩しゲームは、シンプルながら色々な処理が必要です。

VBAの使い方はもちろん、自作ゲームの入門としておすすめです。

出典:ブロック崩しゲームを作る(新興出版社啓林館 情報授業実践記録)

オセロゲーム

オセロゲーム
画像参照元:プログラミングで遊ブログ

続いてはオセロゲームです。

エンジニアエンジニア

エクセルのセルをマスに見立てて碁盤を作成できます。

オセロゲームを作成するまでのステップとしては

  1. オセロの準備(碁盤、石の作成)
  2. 碁盤に石を置けるようにする
  3. 挟んだオセロの石を反転させるようにする
  4. オセロの数をカウントする

といった流れになります。

特にVBA(プログラミング)に対しては

  • 碁盤に石を置けるようにする
  • 挟んだ石を反転させる

といった抽象的な言葉は理解できませんので、「それはつまりどういうことか」を別な言葉で論理展開する必要になります。

エンジニアエンジニア

あくまでもVBAやプログラミングは、命令されたコードを処理するためのツールでしかありません。

このようにオセロゲームをVBAで作成することで、VBAの基礎理解、つまりプログラミング的思考力が磨かれていきます。

出典:【Excel Vba でオセロ】オセロ作成のために必要な考え方と事前準備(プログラミングで遊ブログ)

そもそもVBAとは

VBAでゲームが作れることを解説してきましたが、そもそもVBAとは何か?について説明します。

◎VBAとは・・・

VBAとはVisual Basic for Applicationsの略でExcelやAccessなどで利用できるプログラミング言語の1つです。VBAを使うことで手動で行っている定型的な業務などを自動化させることができたり、独自のフォームなどを作成してExcelをアプリケーションのように見せることなどができます。

引用元:Excel VBA入門

VBAとマクロの違い

よくVBAとマクロを混同されている方がいますので、それぞれの違いを解説します。

マクロとは

エクセルの操作を自動化するための機能のことです。

マクロはエクセルの全機能を操作できます。

操作を記録できるので、その記録データを呼び出すことで操作の自動化ができます。

VBAとは

MicrosoftOfficeに搭載されたプログラミング言語のことです。

つまり両者の関係は、エクセルにある「マクロ機能」の中身が、プログラミング言語「VBA」によって記述されているということです。

VBAを使ったゲームの作成手順

VBAでゲームを作成する際は以下の流れで進めていきます。

  1. 仕様を検討する(ゲームのルール、見た目など)
  2. 必要な機能の一覧を作成する
  3. かんたんな設計を行う
  4. VBAでコードを記述して挙動を確かめていく
  5. 挙動にエラーがあれば適宜修正する
注意点としては、いきなりコードを書かず、はじめに仕様を細かく決めておくことです。

例えば、家の建築で考えてみます。

家を建てるのは大工さんですが、大工さんは設計図を見ながら家を組み立てていきます。

設計図なしに家を建てていけば、何かしら不具合が生じるはずです。

つまり、

  • 家の設計図=ゲームの仕様書
  • 大工=プログラミング

にあたります。

建築の基礎が数mmでもずれていると全体に影響を及ぼすのと同様に、プログラミングもたった1つコードが誤っているだけで正しく動作しません。

プログラミング学習者プログラミング学習者

いきなりコードを書くことから始めると、あとから機能が足りないことに気づいたり、その機能を入れるためにすでに記述したコードを書き直す必要性も出てきます。

また、考えながらコードを書くと時間も掛かるため非効率です。

あらかじめ詳細まで仕様を詰めておくことで、コードを一気に書き上げていけるようになります。



エクセル(VBA)でプログラミングゲームを始めるメリット

エクセル(VBA)でプログラミングゲームを始めるメリット

VBAでゲームを作ることはプログラミング初心者にとってメリットがあります。

主には

  • 面倒な環境構築が不要
  • 自動化できる

というメリットについて解説します。

面倒な環境構築が不要

エクセルは、現在ほとんどのWindowsPCにイントールされているため、あらためて設定する必要がありません。

VBAはエクセルの機能のひとつなので、すぐに利用開始できます。

それ以外のプログラミング言語の場合は、パソコン内にプログラミング言語を使うための開発環境を構築する必要があります。

プログラミング学習者プログラミング学習者

特に初心者の場合は、この環境構築からつまずくケースが多いほど、手間が掛かる作業です。

今すぐにでもプログラミングを始められることは、初心者にとって大きなメリットです。

本業の業務自動化ができる

VBAは本来ゲームを作るためのプログラミング言語ではなく、作業を自動化することで効率化を図ることを目的としています。

もし本業でエクセルを利用する機会が多いのであれば、VBAで自動化することで作業時間をはるかに短縮化できます

プログラミングジャパンプログラミングジャパン

実際に、今まで3時間かけていた作業がわずか1分程度でできるようになったという例もあります。

VBAの学習を通じて、

  • 「いつもの作業をVBAで自動化できないか?」
  • 「あの作業を自動化するためには、このようにしたらよいのではないか?」

と考えられるようになります。

生産性高い働き方ができれば、会社からの評価は間違いなく上がりますし、仕事にも余裕を持てるようになります。

プログラミング初心者がゲームを作るためのおすすめ言語

プログラミング初心者がゲームを作るためのおすすめ言語

プログラミング初心者がゲーム作成にあたりどんなプログラミング言語がおすすめなのかを解説します。

VBAでもゲームを自作できますが、本来はゲーム開発のためのプログラミング言語ではありません。

そのため、どうしても作れるものに限界があります。

ステップとしては、

  1. VBAでプログラミングに触れてみる
  2. VBAでゲームを自作してみる
  3. 新しいプログラミング言語にチャレンジする

といった流れで進めると挫折せずに進められます。

プログラミング言語にはさまざまな種類がありますが、ここでは初心者がゲーム開発ができるプログラミング言語を紹介します。

Kotlin

Kotlin(コトリン)は、Android開発の公式言語として正式に採用されているプログラミング言語で、Androidアプリのゲーム開発にも利用されています。

プログラミングジャパンプログラミングジャパン

現在海外のスタートアップ企業を中心にKotlinを利用したアプリケーション開発が進んでおり、Slack、Evernote、WordPress、Pinterestなどの世界的有名企業も導入しています。

日本国内ではまだメジャーな言語ではありませんが、Yahoo!・LINE・サイバーエージェントといった企業では、すでに導入されています。

海外のトレンドが日本に到達するまでタイムラグがあります。

逆にいえば競争が少ない今のうちにKotlinをマスターすることで、時代を先取りした働き方が実現できる可能性があります。

Swift

Swift(スウィフト)は、iPhone、iPadなどで有名なApple社が開発したプログラミング言語です。

iOSやMacなどのアプリ開発に利用されています。

Swiftは2014年に開発された新しいプログラミング言語であるため、ほかのプログラミング言語のよいところを集めて作られています。
プログラミングジャパンプログラミングジャパン

そのため、初心者でも扱いやすいプログラミング言語として定評があり、数多くの教育機関がプログラミング教材として導入しています。

Swiftエンジニアの需要は今後さらに伸びると予想されています。

理由としては、

  1. 国内のiPhoneシェアは4割であるため市場規模がそもそも大きいことと
  2. 最新アップデートによりiOS以外のWebアプリ開発も可能になったこと

が挙げられます。

Unity

Unity(ユニティ)は、ゲームアプリを開発するためのゲームエンジン(開発環境)です。

Unityの特長は操作性の高さです。

初めてUnityに触れる人でもチュートリアルに沿って進めるだけで、1時間程度でシンプルなゲームアプリを作成が可能です。

プログラミングジャパンプログラミングジャパン

さらにUnityを使いこなせば、高クオリティの3Dゲームまであらゆる開発ができます。

実際にPS4やXboxなどの3Dゲームの多くがUnityで開発されており、ゲーム開発エンジンの中でトップシェアを誇ります。

そのため、Unityのスキルがあればゲーム会社へ転職を目指す上で、大きなアピールポイントになります。



プログラミング初心者がゲームを作るおすすめの学習方法

プログラミング初心者がゲームを作るおすすめの学習方法

ここからは、プログラミング初心者がゲームを作れるようになるための学習方法を紹介します。

学習方法は大きく分けてふたつあります。

  1. 費用をなるべく掛けずに自分のペースで学習したい場合は「オンライン学習」
  2. 多少費用を掛けてでも最短でスキルを身につけたい場合は「プログラミングスクール」

といった違いがあります。

ご自身の目標に合わせて選択してください。

オンライン学習

オンライン学習はインターネット環境があれば、いつでもどこでも学習が可能です。

主な特長は

  • いつでも場所を選ばず学習できる
  • 豊富なコンテンツの中からテーマを自由に選べる
  • 何度も繰り返し学習ができる
  • 無料で使えるサービスもある

が挙げられます。

ここではおすすめのオンライン学習サービスを紹介します。

ドットインストール

ドットインストールの公式サイトトップページ
画像参照元:ドットインストールの公式サイトトップページ

ドットインストールは、プログラミング学習に特化した動画学習サービスです。

ドットインストールの特長は、

  • 445レッスン、6,695本の豊富なレッスン動画
  • 動画は1本あたり3分以内
  • 無料で観られるコンテンツもある

という点があります。

ゲームプログラミングに関するテーマも豊富に用意されており、

  • Unity入門
  • iPhoneアプリ開発入門
  • Androidアプリ開発入門

など、基礎学習から始めることが可能です。

プログラミング学習の際は、動画を見ながら同じように操作していくことで、初心者でもつまずかずに学習を進めることが可能です。

Udemy

Udemy(ユーデミー)は、教育業界大手のベネッセが運営するオンライン学習プラットフォームです。

Udemyにはゲームプログラミングをはじめ、さまざまな学習動画が用意されています。
  • Unityを使ったゲーム開発
  • Excel VBAの基本講座
  • Androidアプリ開発基礎講座
自分のスキルに合った学習動画を視聴することで、効率的に学習を進めることが可能です。

動画は1本あたりの購入課金制ですが、タイミングによってはセールを行っている場合があるので、費用を抑えた学習が可能です。

エクセルの真髄:鵜原パソコンソフト研究所

画像参照元:エクセルの真髄 鵜原パソコンソフト研究所

エクセルの真髄は、VBA初心者でも基礎から応用まで学べる学習サイトです。

ステップごとに手順がまとめられているので、書いてある内容をそのまま実行していくだけで、基本な知識からVBAの具体的な活用まで学習できます。
プログラマー志望者プログラマー志望者

ゲーム開発というよりは、VBAの理解と操作に慣れるための学習サイトとなっています。

「VBAやプログラミングのことがまったく何もわからない。」といった方は、まずはこちらのサイトで基礎を覚えることで、他の学習方法を選択したときにも理解が早まるはずです。



プログラミングスクール

オンライン学習よりも短期間でプログラミングスキルを高めたい方は、プログラミングスクールの受講がおすすめです。

プログラミングスクール受講のメリットは、

  • わからないところは現役エンジニアに直接質問できる
  • 学習期間とカリキュラムが決まっているためゴール設定がしやすい
  • 同レベルの仲間と交流できるためモチベーションが保ちやすい
  • 転職サポートがあるので最短でエンジニアに転職できる

といったことが挙げられます。

ここでは、VBAやゲームプログラミング学習に特にオススメのスクールを紹介します。

KENスクール

KENスクール公式サイトトップページ画像
画像参照元:KENスクール公式サイトトップページ

KENスクールは開校から31年目を迎える老舗のプログラミングスクールです。

プログラミング業界で唯一VBA学習に特化したコースを用意しており、学習だけでなくExcel VBA Basic、Excel VBA Standardなどの資格取得も可能です。

そのほかにも、Unityコースやスマートフォンアプリ開発コースなどより実践的なゲームプログラミング学習ができるコースが用意されています。

身につけたいスキルや将来の目標に合わせてカリキュラムを自由に選択することが可能です。

マンツーマンレッスンに特化しているので、わからない点や不安に感じることはいつでも直接相談可能です。




テックアカデミー

TechAcademyの公式サイトトップページ
画像参照元:TechAcademyの公式サイトトップページ

TECH ACADEMY(テックアカデミー)は、複数の学習コースの中から、学習内容・期間などを自由に選択できるオンラインプログラミングスクールです。

iPhoneアプリコースやAndroidコース、Unityコースなどゲームプログラミングに特化した学習が可能です。

受講生の中には、なんと81歳でiPhoneアプリを開発した方もいるようです。

また、全コース転職サポートがついているため、完全未経験からエンジニア転職を実現することが可能です。




プログラミングジャパン

プログラミングジャパン公式サイトのトップページ画像
画像参照元:プログラミングジャパン公式サイトトップページ

プログラミングジャパンは、パソコン超初心者でも最短1ヶ月でITエンジニアを目指せるプログラミングスクールです。

プログラミング業界内ではまだ珍しい、スマホアプリ開発に特化したプログラミング学習を受けられることが特長です。
プログラミングジャパンプログラミングジャパン

多くのスマホアプリ開発の現場で導入されているプログラミング言語「Swift」や「Kotlin」を基礎から身につけることが可能です。

どちらの言語も、海外のスタートアップ企業ではメジャーになりつつあり、日本でもこれから需要が増えることが予想されています.

今のうちにスキルを身につけることで将来のキャリアアップに繋がる可能性がひろがるでしょう。

学習の目的は「1つのアプリを完璧に1人で開発できるようになること」としており、学習を通じて自分の力でスマホアプリ(ToDoリストアプリ)の完成を目指します。

未経験からエンジニア転職!
副業フリーランス転職にも完全対応!

社会人がエンジニア転職するなら
プログラミングジャパン!
まずは無料体験レッスンで詳しく話を聞いてみよう!

まとめ|エクセル(VBA)のゲーム開発はプログラミング初心者におすすめ!

この記事ではExcelでゲームを作りたい方に向けて、

  • VBAを使ったゲームの例
  • VBAを使ったゲームの作成手順
  • ゲーム開発におすすめのプログラミング言語
  • ゲーム開発におすすめの学習方法

を解説してきました。

VBAでゲームをつくれる位のスキルが身につけば、VBAを本業でも活かせるようになり、業務生産性を大きく高めることが可能です。

またVBAに限らず、さらにほかの言語にもチャレンジしたい方は、オンライン学習サイトやプログラミングスクールの受講がおすすめです。

初心者が始めから高度なゲームを開発するのは難しいため、始めは動画を活用したり、ほかの人が作ったゲームのプログラムを同じように真似てみると理解が早くなります。

もし、最短でプログラムスキルを伸ばし、エンジニア転職まで実現したい場合は、学習カリキュラムやサポート体制が整っているプログラミングスクールの受講がおすすめです。

ぜひ参考にしてみてください。

プログラミングを始めようか迷っていませんか?
プログラミングを始めてみようと思っても
学習で挫折しないか、職業として生計を立てていけるか不安ではありませんか?

プログラミングジャパンでは
全くの初心者でも最速で安定した収入を得るプログラマーになる為に必要なステップをLINE@で配信しています。