前のページ|次のページ

プログラミングを始める


近年では様々な分野でコンピューターが導入され,多くの人がコンピューター上のアプリケーションを使用しています.さらに,将来的にはAIの導入の促進が予想され,アプリケーションを使用するだけでなくそれらを作成する能力が重要になってきました.そこで,ここからはそれらの基礎となるプログラミングについて学習していきます.

プログラミングとは,コンピューターに実行させる作業の手順をコンピューターに理解できる形にしたもの(これがプログラム)を作成することです. 実際には,コンピューターが直接理解できるのは「機械語」という0と1だけで記述されたものであり,これを人間が作成するのは非常に困難なので,通常は人間の言語との中間的な「プログラム言語」を使用して作業手順を記述します.プログラム言語を使用して記述したものをプログラムの「ソース」といいます.

プログラム言語には様々なものがあり,用途によって使い分けられていますが,最も基本的な言語の構造は共通しているので,この講義ではExcelに内蔵されている「VBA(Visual Basic for Applications)」という言語を使用してプログラミングの学習をしていきます.


VBAとは

マイクロソフト社によって開発された言語で,Excelに内蔵されています.一般的な言語は,直接コンピュータに実行させるプログラムを作成しますが,VBAはExcelを通じてコンピューターに命令するプログラムが作られます.また,VBAではプログラムのことを「プロシージャ」といいます.

EXCELの準備

実際の作業は,Excelの「開発」ツールにある「VBE(Visual Basic Editor)」を使用します.しかし,最初の設定では開発ツールのリボンが表示されていないので,初めに開発ツールが表示されるようにします.

手順

  1. Excelを起動する.(ブックを開いているときは「ファイル」メニューをクリックする.)
  2. 左下にある「オプション」を選択する.
    オプション選択
  3. 表示された「Excelのオプション」の左側にある一覧から「リボンのユーザー設定」を選択し,右側に表示された一覧の「開発」をクリックしてチェックを付け,「OK」をクリックします.
    開発ツールの表示
  4. 新しいブックを開くと「開発」リボンが表示されます.
    開発リボン

VBEの使い方

  1. 「開発」リボンを選択し,「Visual Basic」をクリックします.
    VBEスタート
  2. VBEが表示されます.
    VBE Window
  3. 初めてVBEを使用するときだけ以下の操作を実行します.
    1. VBEの「ツール」メニューを開き「オプション」を選択します.
      VBE Tool
    2. 表示されたオプションから「変数の宣言を強制する」にチェックし「OK」します.
      VBE Option

最初のプログラム

実行するとExcelの画面に文字が表示される簡単なプログラムを作成しながら,作業の手順を確認しましょう.

  1. 前述のようにしてVBEを表示し,プログラムを書く場所である「コードウィンドウ」を開きます.VBEの「挿入」メニューから「標準モジュール」を選択します.
    Module start
  2. 右側の領域にコードウィンドウが表示されます.(前述の「変数の宣言を強制する」をチェックしてあると,最初の行に「Option Explicit」と入力されているはずです)
    Code Window
  3. コードウィンドウの Option Explicit の下に「Sub ex_00」と入力し「Enterキー」を押します.「ex_00」の部分はこのプロシージャにつけた名前です.名前のつけ方は基本的に自由ですが,後で学習する変数名の付け方と同様の制限があります.
  4. 次のように表示されます.
    Sub ex_00()

    End Sub
  5. Sub と End Sub の間にプログラムの命令(ステートメント)を記述します.内容が見易くなるように「Tabキー」を押して字下げをして,「MsgBox "Hello VBA Programming"」と入力します.
    Sub ex_00()

    MsgBox "Hello VBA Programming"

    End Sub
    「MsgBox」は「"」で囲まれた部分をダイアログボックス(小さい別窓)に表示する命令です.
  6. スペルミスや命令の書き方に間違いがある場合は,エラーを含む行が赤字となり「コンパイルエラー」を知らせるメッセージが表示されます.エラーの内容を理解したら「OK」してメッセージを消して,プログラムを修正します.また,エラーの内容を詳しく知りたいときは「ヘルプ」をクリックします.
    プログラム名を ex 00 としてわざとエラーにしてみると次のようなエラーメッセージが表示されます.
    Compile error
  7. コンパイルエラーが無くなったら,作成したプロシージャを実行してみます.プログラムを実行する方法はいくつかありますが,ここではコードウィンドウ上で実行する方法を使用します.Sub と End Sub の間にカーソルを置き,VBEのツールバー(ウィンドウの上部にアイコンが並んでいる所)から「▷」のアイコンをクリックします.
  8. 文法的にエラーがなくてもプログラムを実行したときにエラーが発生することがあります.これを「実行時エラー」と言い,メッセージが表示されます.
    Run Error
    表示されたメッセージの「デバッグ」をクリックすると,プロシージャのエラーが生じた位置を教えてくれるので修正します.以下の画像は,わざとエラーを出すために,存在しないExcelのシート2を選択する命令を使用した例です.
    Debug
    実行時エラーが起きた時は,VBEのツールバーから「□」のアイコンをクリックして実行を中止して下さい.
  9. 修正後再び実行して成功すれば,今回のプログラムでは次のような窓が表示されます.
    ex00

プログラムの登録

プログラムが完成したら,Excelの画面上から実行できるように「フォームコントロール」の「ボタン」に登録します.

  1. Excelワークシートの「開発」タブにある「挿入」をクリックし,「フォームコントロール」の「ボタン」を選択します.
    FormControl
  2. ワークシートのボタンを置きたい所でマウスをドラッグしてボタンの大きさを決めると「マクロの登録」窓が表示されるので,「マクロ名」から登録したいプログラム名を選択し「OK」します.
    Button Select
  3. 最後に,作成されたボタンの名前を変更します.「ボタン1」と表示されているボタンの名前をマウスでドラッグして選択し「ex_00」に変更します.変更したらボタン以外の部分をクリックすれば確定します.
    Button Name

プログラムの保存

  1. 「ファイル」タブをクリックし,「名前を付けて保存」をクリック → 「このPC」をダブルクリック.
    File Save
  2. 表示された窓の左側の領域から保存場所を指定し,ファイルの種類には「Excelマクロ有効ブック」を選択し,「自分の学籍番号-vba-renshu.xlsm」というファイル名で保存してください.
    File Type & Name

プログラムを開く

保存したプログラムのExcelブックを開く場合,「セキュリティの警告」が出ることがあります.その場合は,右横の「コンテンツの有効化」をクリックしてください.
File Open Warning

練習問題1

コードウィンドウの上で作成したプログラム ex_00 の End Sub の下に1行開けて(Enterを押すと改行される)新しい Sub プロシージャを作成し,プロシージャ名を「ex_01」とします.

ex_00 を参考にして,「こんにちは,最初のVBAプログラミング」という文字が表示されるプログラムを作ってみましょう.ex_00 と同様にボタンに登録し,ボタンは ex_00 の横に適当な間隔を開けて配置してください.