業務効率化の道具箱(9)VBAで自動集計アプリを作ってみよう山浦恒央の“くみこみ”な話(162)(2/3 ページ)

» 2023年02月21日 07時00分 公開
※本記事はアフィリエイトプログラムによる収益を得ています

4.VBAによる自動集計アプリの作成

 今回は、1ページ目の3.1項で挙げたような業務を効率化する「自動集計アプリ」を手順立てて作成します。

4.1 イメージ図

 自動集計アプリのイメージ図を以下に示します(図1)。

自動集計アプリのイメージ図 図1 自動集計アプリのイメージ図[クリックで拡大]

 図1は自動集計アプリのイメージ図です。自動集計アプリから外部のCSVファイルを開き、データをコピペします。動作イメージを図2に示します。

動作イメージ 図2 動作イメージ[クリックで拡大]

 図2に簡単な動作イメージを示しました。自動集計アプリから外部のデータを開き、自分のExcelシートに貼り付けるものです。

 以下に、文書形式の仕様を示します。

  1. 自動集計アプリから「集計」ボタンを押下し、ファイルダイアログを開く
  2. ファイルダイアログからCSVファイルを選択する
  3. CSVファイルを開き、データをコピーし、自動集計アプリに貼り付ける

 上記の動作をするVBAを作成してみましょう※1)。なお、今回はデータのコピペというところまでで、次回細かな集計処理の話をしたいと思います。

※1)最初に説明した通り、業務効率化できるならば実装言語、実装方法は何でも構いません。今回は、VBAを例題としていますが、その他の言語、外部ツールでやってもOKです。

4.2 自動集計アプリを作ってみよう

4.2.1 ツール作成の準備

 最初にツール作成の準備を行います。詳細は以下の通りです。

(1)集計データを作成する

 集計に必要な外部データを作成します。新規でExcelを開き、図3のような任意のデータを入力し、集計データ.csvとして保存してください。なお、数値かつA列、B列がスキマなくあれば、入力するデータは何でもOKです。

外部データ 図3 外部データ(ここでは集計データ.csvとして保存している)

(2)自動集計アプリのファイルを作成する

 新規でExcelを開き、自動集計アプリ.xlsmとしてファイルを保存します(図4)。

ファイルの保存画面 図4 ファイルの保存画面(ここでは自動集計アプリ.xlsmとして保存)

 図4は、ファイルの保存画面です。VBAは、*.xlsmとすると、VBAが有効になったファイルを表しています。

 ここまでで、集計データ.csv(集計に必要なデータ)と自動集計アプリ.xlsm(VBAを実行し、集計するExcelファイル)が作成できました。

4.2.2 ボタンの作成

 今回の自動集計アプリでは、Excelシート上のボタンを選択したとき、プログラムを開始します。よって、シートにボタンを配置します。開発タブ→挿入→フォームコントロールからボタンを選択します(図4の赤枠参考)。

フォームコントロールの場所 図5 フォームコントロールの場所

 図5を選択し、描画をすると、図6の画面が現れます。

マクロの登録画面 図6 マクロの登録画面

 図6の画面で、「新規作成(W)」を選択すると、標準モジュール(Module1)を作成します(図7)。

標準モジュールを作成する様子 図7 標準モジュールを作成する様子

 図7では、Excelからボタンを選択すると、Sub ボタン1_Click関数が呼び出すプログラムができます。

 次に、ボタンを置いたシートを確認してみましょう(図8)。

ボタン表示例 図8 ボタン表示例

 図8のようにボタンが置けていることが分かりますね。このボタンを右クリックし、ボタン名称を変更します(図9)。

ボタン名称の変更方法 図9 ボタン名称の変更方法

 図9の画面が現れたら、「テキストの編集」を選択し、「集計」に変更します(図10)。

集計ボタン 図10 集計ボタン

 図10の通り、集計ボタンが作成できましたね。

 上記までで、ボタンを押すと、VBAが実行するところまで作成できました。

Copyright © ITmedia, Inc. All Rights Reserved.