予測財務数値をデータベース化する
経営情報の中でも最もよく利用されるデータの一つは予測財務数値(=計画値、予算値)ではないでしょうか?
予測財務数値は、一般には、行方向(縦方向)に勘定科目、列方向(横方向)に年月を記したエクセル表が用いられることが多いのではないでしょうか?
本項では、このようなエクセル表を簡単にデータベース化できるマクロを紹介します。

マクロというと、とっつきにくい、とか、ブラックボックスとなってしまう、などご心配となる方も多いと思われますが、私も決して上級者ではないため、非常に簡潔なものとなっております。通常の市販されているプログラムでは、エラー処理なども完璧に施され、また、様々なテストを経て販売されていますが、こちらはあくまで、テストサンプルとして皆さまに共有しているもので、このプログラムの利用により何らかの損失をされた場合も補償は致しかねますので、ご了承の上、お使いください。
ただ、この程度の簡素なプログラムでも十分に、業務の効率化を図れることをご認識いただけるのではないか、と考えております。
このファイルを、ご自身のPCの適当なフォルダにダウンロードしてください。ファイル名はご自由に変えていただいて構いません。
① マクロを使ってエクセル表を”データベース”化します
- 上記でダウンロードしたファイルを開きます。 なお、このファイルにはマクロが含まれていますので、「マクロが無効にされました」といった警告が出る場合があります。その場合は、警告の横にある「コンテンツの有効化」ボタンを押下してください。
- このファイルの「データベース化する表」という名称のワークシートを選択してください。
- Excelのメニュー⇒表示⇒マクロから、「データベース作成」というメニューを選んで、「実行」ボタンを押します。

- 「勘定科目などを示すセル範囲を選択してください」というメッセージがでますので、コードと科目名が書いてあるセルアドレスA6から、セルアドレスB59を選びOKを押します。
なお、この際、“コード”や“科目名”など題名が書かれているセルは選択しないでください。

- 次に「年月などを示すセル範囲を選択してください」というメッセージがでますので、年月が書いてあるセルアドレスC1からセルアドレスN1を選びOKを押します。
- マクロにより自動的に「output」という名前のワークシートが作成され、そのシートには、「データベース化する表」のデータが“データベース”の形式で転記されています。
具体的には、「データベース化する表」のセルアドレスC6の値から行方向にC59までの値がD列に転記され、それぞれのデータ行のA列、B列には4.の作業で選択したコードと勘定科目が、C列には5.の作業で選択した年月が入っています。
② データベースからPIVOTテーブルを作成します
①で作成したデータベース形式のデータは、エクセルの「PIVOT(ピボット)テーブル」という機能を使って、見やすい形にします。
- ①で作成した「output」という名称のワークシートを選択し、そのセルアドレスA1、B1、C1、D1に、それぞれ「コード」、「科目名称」、「年月」、「金額」と記入してください。
また、C列を選択し、表示フォーマットを「日付形式」に修正してください。

- 次に、エクセルのメニュー⇒挿入⇒ピボットテーブルと選択しますと、データ範囲が自動で設定されます。また、ピボットテーブルを配置する場所として、新規ワークシートを選択してOKを押します。
- 新しいシートに「ピボットテーブル1」という表示が出ますので、右側のピボットテーブルのフィールドの選択画面において、「行」という場所にコード、科目名称、「列」という場所に年月、「値」という場所に金額をドラッグします。

- 引き続き、「ピボットテーブル」表の中のコードが表示されている場所を選択しマウスの右クリックを押し、「コードの小計」についているチェック番号を外します。さらに、再度、コードが表示されている場所を選択し、「フィールドの設定」を選択し、「レイアウトと印刷」を選択し、「アイテムのラベルを表形式で表示する」を選択します。
これまでの作業で、ピボットテーブルがほぼもとの予測財務数値の表と同じ形式になりました。
なお、予めこの作業を行った結果を「参考ピボットテーブル」というワークシートに作成しています。
このような手順で、よくある財務数値表をデータベース化できたのですが、これだけであれはデータベース化する意味はありません。
データベース化すると、データの統合や比較など様々な作業が容易になるのですが、詳細は別項にて説明します。