業務効率化の道具箱(11)VBAでグラフ描画が可能な自動集計アプリを作ってみよう山浦恒央の“くみこみ”な話(164)(2/3 ページ)

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

4.データ転記とグラフ描画を自動化する「自動集計アプリ」を作ってみよう

 下記に、前ページで示した作業を自動的に実行する「自動集計アプリ」の作成手順を示します。

4.1 簡単な仕様と完成イメージ

 自動集計アプリの簡単な仕様を下記に示します。

  • (1)データのグループ数、ファイル数、ファイル名を入力する
  • (2)アプリと同じ階層のフォルダからファイル名に該当するCSVを読み込む
  • (3)グループごとにシートを追加する
  • (4)開いたファイルのデータを繰り返しコピーし、自動集計アプリに貼り付ける
  • (5)集計結果をグラフに描画する

 完成イメージも併せて示します(図3)。

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

 図3が自動集計アプリの完成イメージです。複雑に見えますが、外部にある複数のCSVファイルをコピーし、特定のグループに分け、異なる色でグラフに描画するだけです。なお、本記事の制約上、グループ数2、ファイル数6で実行することを前提とします。

 それでは、手順に沿って作成していきましょう。

4.2 データの準備

 データを集計するCSVファイルを作成します。例えば、以下のようなデータです(図4)。

図4 集計データ例 図4 集計データ例

 図4は、集計対象となるデータの例です。ここでは、Excelのrand関数でデータを作成しました。なお、本記事の制約上、列に入れるデータはA列とB列のみとしてします。さらに、それを6個のCSVファイルにコピーし2つのグループにしました(図5)。

図5 用意したファイル作成例 図5 用意したファイル作成例

 図5は、用意したファイルの作成例です。筆者は、グループ1を「dataGr1-1.csv〜dataGr1-3.csv」とし、グループ2を「dataGr2-1.csv〜dataGr2-3.csv」としています。

4.3 マクロ有効ファイルの準備

 Excelを開き、マクロ有効ブックとして保存します(図6)。

図6 マクロ有効ブックの保存例 図6 マクロ有効ブックの保存例

 図6は、マクロ有効ブックの保存例です。図に示す通り、「ファイルの種類(T)」をExcelマクロ有効ブック(*.xlsm)として保存してください。

4.4 自動集計アプリの下準備

 今回の自動集計アプリでは、グループと読み込むCSVファイルの情報を設定する必要があります。そのため、以下の手順でシートを作成してみましょう。

4.4.1 シートの追加

 まず、次の2つのシートを追加してください。

  • 入力ファイルシート:読み出すCSVファイル名、データ数などを記述するシート
  • グラフシート:読み出したCSVファイルをグラフに表示するシート

 シートの追加を図7に示します。

図7 集計アプリのシート作成例 図7 集計アプリのシート作成例

4.4.2 入力ファイルシートの作成

 次に、入力ファイルシートを作成します。このシートには、グループ名称、ファイル名称、データ数、ボタンを作成します(図8)。

図8 入力ファイルシートの作成例 図8 入力ファイルシートの作成例[クリックで拡大]

図8は、入力ファイルシートの作成例です。以下の手順に従ってシートを作成してください。

(1)グループ名称を記入する

 A1、A2セルにグループ名称を記入します。これが、データを分割するグループです。

(2)CSVファイル名を記入する

 次に、A2、B2セルから読み出したいCSVファイルのファイル名称を記入してください。

(3)グループ数とファイル数を記入する

 E2にグループ数、E3にファイル数を記入します。この値に従って、グラフ描画時の表示内容を決定します。

(4)ボタンの配置

 最後に、ボタンを配置します。ボタン作成は、「開発」→「挿入」→「フォームコントロール」のボタンを選択し、シートをクリックします。さらに、ボタン名称を「アプリ実行」に変更すればOKです。

Copyright © ITmedia, Inc. All Rights Reserved.