Excelは複雑な集計をさせることが出来る優れたソフトウェアです。例えば店舗ごとに売上などのデータが入ったブックを集計する場合、店舗の数だけ、下記の手順の繰り返し行い、集計表を完成させることになります。
ブックを開く→集計を行う→集計シートに転記→ブックを閉じる
店舗の数が、数件程度であれば、特に問題はないのですが、数十件、数百件ともなれば、手間がかかり、集計するまでの過程が大変です。
そこでVBAと呼ばれるマクロ機能を使えれば、これらの操作が楽に出来ます。今回はこの機能を使って、楽にできる方法を紹介します。
今回のマクロを使って、完了するまでの手順は次のブックを使用します。
・集計.xlsm マクロ機能が入ったブック。集計するための表とグラフの他に、VBE(ビジュアル ベーシック エディタ)内に、プロシージャ(プログラム)が書かれています。
・八王子店202307.xlsx 八王子店の売上等のデータが入ったブックです。
・品川店202307.xlsx 品川店の売上等のデータが入ったブックです。
ここでExcel内にあるVBEに、マクロ機能が使われていれば、拡張子は、「xlsm」になります。店舗数はいくらでも集計することが可能ですが、ここでは簡単に2店舗をサンプルとしています。
※Teamsを活用した業務効率化については以下の記事でも詳しく解説しています。ぜひご覧ください。
TeamsアプリListsを活用して社員のスキルを管理・可視化する方法
TeamsアプリListsで「インシデント管理」を効率的に行う方法
(F列、I列の計算式及び利益、客単価のグラフも設定済みの状態です。)
最後に店舗データ管理のExcelテンプレートをご紹介します。
当記事でご紹介した項目を網羅したテンプレートとなっていますので、今すぐに業務に活用することが可能です。
ぜひ業務で活用してください。
店舗データ管理のExcelテンプレートのダウンロードはこちら
Excelでの運用に限界を感じている方はこちらもぜひご覧ください。
(DL無料)Teamsを活用した「脱Excel」事例集~Excel業務の負荷を削減する方法~
※researcHR(リサーチャー)は、Teams/Slackに追加するだけでチームの「誰が・何を知っているか」を集約・共有するアプリです。
今回使用する、VBEに記述されたマクロのコードを見てみましょう。
基本的な見方として、1行目のSub TENPO_SYUKEI()から最終行のEnd Subまでが、1つのプログラムになります。この単位をプロシージャと言います。
今回使用するプロシージャは、大きく次のような流れになります。
プロシージャで最初に行うことは、変数の宣言です。2行目から13行目まで、次のような構文を使用して、宣言していきます。
Dim 変数名 As 変数の型
変数名は、任意の名前を付けることが出来ますが、SubやForと言った予約語と呼ばれるものは名前に使用することが出来ません。プロシージャ内で使われる単語と、同じ変数名であれば、区別がつかないからです。
変数の型は、文字や数字だけでなく、Excelで使われるブック、シート、セルの名前と言ったものになります。使い方としては、名前を付けた変数に、値などを格納し、プロシージャ内やプログラム全体で、活用していくことになります。
Excelのマクロ内で、ファイルやフォルダの操作を行うためには、FileSystemObject(ファイルシステムオブジェクト)が必要です。
そのためには、外部ライブラリを指定する方法と、プロシージャ内で、記述する方法のいずれかになります。ここでは、7行目でDim FSO As Objectと変数の宣言を行い、17行目で、CreateObjectメソッドを実行してFileSystemObjectのインスタンスを作成することで、フォルダ内にあるファイル名を、取得することが出来るのです。
For Each 文で、グループ名で指定したフォルダ内にあるファイル名を順番に選択します。
For Each 変数(ファイル名) In 変数(グループ名)
繰り返す構文
Next 変数(ファイル名)
ここでのグループ名は、FOLDER_PATH です。変数に続けて「= ThisWorkbook.Path & "\店舗フォルダ"」とすることで、このフォルダ内のファイルを検索します。フォルダ名の前にあるThisWorkbook.Pathは、今実行しているブックと同じ場所にあるパスを指します。そのパス内にある「店舗フォルダ」を指すことになります。そしてそのフォルダ内のファイル名を、変数fに代入してくれるのです。
一度指定されたファイル名は、Next fまでそのファイル名が使われます。全てのファイル名を指定出来たら、For Each文は完了です。
次に変数fに、ファイル名が代入することが出来たら、ファイル名を、ワークブックの変数wbに代入します。更に変数wbで指定されたワークブックの、1番目のワークシートを変数wsに代入します。
Set wb = Workbooks.Open(f)
Set ws = wb.Worksheets(1)
こうすることによって、店舗のデータが入っているワークシートのセルの値を、For~Next文によって、値を次から次へと参照していくのです。
ここでは2店舗しかないので、一つ一つ名前を指定して、処理することもできますが、将来店舗数が増えたときのことを考えてfor Each文を使うことをお勧めします。
先ほど③ではFor Eachでしたが、ここではEachを使わずに、定められた回数分繰り返す方法で、集計を行っていきます。
For 変数 = 開始値 To 終了値
繰り返す構文
Next 変数
開始値を2で、終了値を32としているのは、Excelシートの行番号に合わせているからです。各店舗のシートの1行目には、項目名があるため、開始値は2、終了値の31日のデータは、32行目にあるため、32としています。
繰り返す内容としては、下記のパターンになります。
変数=変数+ws.Cells( i , 数値)
売上は変数URIAGEに格納します。For Each文の開始直後に、シート名をwsに格納しているので、そのワークシートwsの、セル番地を指定して、値を変数に加算していきます。
Cellsはワークシートのセル番地を指定する関数です。括弧内の引数は、Cells(行番号、列番号)で構成されています。ws.Cells( i , 3)にあるiは、For文によって、2から始まり、3、4,5と増えていきます。その次の3は3列目ということで、A列から数えて3番目のC列となります。つまり最初に参照されるセルは、C2となります。
For~Next分によって、C2、C3、C4・・・と、参照するセルが、変化することで、変数URIAGEには、C列の値が、1つ1つ足されていくことになります。
変数ごとに、④で店舗ごとの集計を行いました。次に集計した変数の値を、集計シートへ反映させなければなりません。変数の値をどのセルに代入するか、先ほどの逆になります。
Cells(j , 数値)=変数
Cellsの引数は、行番号、列名の順番は変わりません。上の行でj=3としていることで、3行目の指定した列に、変数の値が代入されることになります。
この時点で1つ目の店舗のシートの集計が完了しました。次の店舗のシートを集計する前に、変数URIAGEなどは初期化、つまり0に戻しておく必要があります。こうしておかなければ、1店舗目の売上などに、2店舗目の売上が積み上がってしまうからです。
Forから始まる構文は、Nextまでで、終了値であれば、終了となり、そうでなければForから繰り返します。
このプロシージャには、For Each文の中にFor i=2 To 32があます。2番目のFor構文を抜けても、For Eachで、選択されていないブックがなければ、集計が終了となります。
Excelでの運用に限界を感じている方はこちらもぜひダウンロードしてご覧ください。
(DL無料)Teamsを活用した「脱Excel」事例集~Excel業務の負荷を削減する方法~
今回は別々のブックに保存されている2店舗を集計しました。運営する店舗数が増えていくことも考えられます。マクロを使って集計すれば、手作業で集計するよりも、時間も労力も忘れてしまうぐらい楽になるでしょう。
皆さんも、マクロ機能をマスターすることで、今までよりもより一層Excelが便利になります。
※Teamsを活用した業務効率化については以下の記事でも詳しく解説しています。ぜひご覧ください。
本記事はKBE(株)がresearcHR(リサーチャー)を提供する過程で蓄積された、現場の声やノウハウ・事例をもとに作成しております。
【Teamsに追加して使える】社内ナレッジ共有ツール
researcHR(リサーチャー)
チームの「誰が・何を知ってるか」を集約・共有
✅ナレッジ共有、属人化の解消
✅社内問い合わせの効率化
✅新人・異動者のフォローアップ
にお困りの際はぜひご相談ください。
また、KBE(株)では、Teamsの運用・利活用コンサルティングを行っております。
企業やチームに最適のTeams運用方法を設計します。初回のご相談無料ですので、ぜひ一度お試しください。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業のTeamsアプリ活用事例をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した日報/週報 運用事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した新人オンボーディング事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したMTG/1on1 代替事例やTIPS」をお伝えします。
KBE株式会社では、ナレッジ共有TeamsアプリresearcHRを提供しています。(Microsoft公式ソリューション、日経新聞に掲載)
その過程で蓄積された様々な企業のTeams/Slack運用事例をお伝えします。
researcHRは、Teamsに追加するだけで、
メンバーの「誰が・何を知っているか」を自動で収集し、
回答をAIが自動でポジティブ・ネガティブチェックすることで、自然なデータを算出。
さらに、算出されたデータから「要注視」ポイントをレポートでお渡しします。
“Lorem ipsum dolor sit amet, consectetur adipiscing elit. Suspendisse tincidunt sagittis eros. Quisque quis euismod lorem.”
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した日報/週報 運用事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したコミュニケーションの課題解決事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したMTG/1on1 削減事例やTIPS」をお伝えします。
KBE株式会社が提供する、researcHRの「コンディション 分析・レポート機能」の概要や、実際のケースを基にした分析レポートを資料としてお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したエンゲージメント可視化・向上の事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した新人オンボーディング事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した人事データ『収集』事例やTIPS」をお伝えします。
KBE株式会社が提供する、researcHRの「コンディション 分析・レポート機能」の概要や、実際のケースを基にした分析レポートを資料としてお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したノウフー(Know Who)の事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したコンディション把握の事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した休職・退職の検知事例やTIPS」をお伝えします。
KBE株式会社が提供する、researcHRの「コンディション 分析・レポート機能」の概要や、実際のケースを基にした分析レポートを資料としてお伝えします。
KBE株式会社では、ナレッジ共有TeamsアプリresearcHRを提供しています。
コンサルティングサービスでは、その過程で蓄積された様々な企業のTeams運用事例をお伝えします。
researcHR(リサーチャー)をはじめて知っていただく方に向けて、わかりやすく基本機能や活用シーンをご紹介します。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した社内問い合わせの効率化事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用した情報共有の活性化事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsアプリを活用したナレッジ共有文化の定着化事例やTIPS」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「デジタル・データを起点とした新しいナレッジマネジメント事例」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業のTeams使用事例やTIPSをお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「デジタル・データを起点とした新しいマネジメント事例」をお伝えします。
KBE株式会社が提供する、researcHRの「コンディション 分析・レポート機能」の概要や、実際のケースを基にした分析レポートを資料としてお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Slackを活用したマネジメント事例」をお伝えします。
KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、様々な企業の「Teamsを活用したマネジメント事例」をお伝えします。
KBE株式会社が提供する、researcHRの「コンディション 分析・レポート機能」の概要や、実際のケースを基にした分析レポートを資料としてお伝えします。
KBE株式会社では、ナレッジ共有TeamsアプリresearcHRを提供しています。
コンサルティングサービスでは、その過程で蓄積された様々な企業のTeams運用事例をお伝えします。
researcHR(リサーチャー)をはじめて知っていただく方に向けて、わかりやすく基本機能や活用シーンをご紹介します。
researcHRをTeams/Slackに追加するだけで、AIがメンバーの状況を収集するため、業務の状況やナレッジが自動で蓄積されます。
既存のナレッジ共有ツールやシステムで、「ログインされない」「データ入力/更新されない」「検索・活用できない」といった悩みを抱える方は、ぜひお問い合わせください。
researcHRをTeams/Slackに追加するだけで、AIがメンバーの状況を収集するため、業務の状況やナレッジが自動で蓄積されます。
既存のナレッジ共有ツールやシステムで、「ログインされない」「データ入力/更新されない」「検索・活用できない」といった悩みを抱える方は、ぜひお問い合わせください。
※KBE株式会社が、ナレッジ共有TeamsアプリresearcHRを提供する過程で蓄積された、
様々な企業のTeams/Slack運用事例をお伝えします。