「もう存在しているデータを、人がもう一度移す」作業に、毎回時間を取られていないでしょうか。
先に結論をお伝えします。Excelの転記自動化は、すぐVBAやRPAを使う必要はありません。
大まかな使い分けは、次のとおりです。
- 値を連動させたい → 関数・参照
- CSVや複数Excelの取得・整形 → Power Query
- Excel中心の一連の操作 → VBA
- 外部システムの画面操作まで必要 → RPA
そして、選び方の原則は1つです。
この記事では、関数・Power Query・VBA・RPAの機能を順番に覚えるのではなく、自分が行っている転記作業を分解し、どこまでの自動化が必要なのかを判断できるところまで整理します。
Excelの転記作業は「どこからどこへ移しているか」で方法が変わる
「Excel 転記 自動化」で調べると、関数、Power Query、マクロ、VBA、RPAなど、さまざまな方法が出てきます。
ただし、どの方法が合うかを決めるのは、ツールの優劣ではありません。
重要なのは、今行っている転記作業の中身です。
まず「転記そのもの」をなくせないか確認する
自動化の方法を選ぶ前に、まず次の3点を確認してみてください。
- 同じデータを2か所で管理していないか
二重管理なら、片方をなくせないか - コピーではなく参照で表示できないか
元データを変更すれば、必要な場所にも反映される形にできないか - 複数の表を1つの管理表にまとめられないか
転記する前提そのものを見直せないか
転記だと思っていた作業が、実は「同じ情報を複数の場所で持っていること」から発生している場合もあります。
移す必要そのものをなくせるなら、自動化するより仕組みはさらに単純になります。
なお、紙やPDFを見ながらExcelへ入力している場合は、転記より前の「入力工程」が問題になっている可能性があります。
その場合は、「データ入力を自動化する方法|紙・PDF・フォームの手入力を減らす5つの方法」をご覧ください。
この記事では、CSV・Excel・業務システムなど、すでにデータとして存在している情報を別の場所へ移す作業を中心に扱います。
自動化する前に確認したい5つのこと
残った転記作業について、次の5点を書き出してみましょう。
- 転記元は何か
CSV/別Excel/別シート/業務システムの画面など - 転記先は何か
管理表/集計表/別ファイルなど - 途中で加工が必要か
列の削除・並べ替え・結合・条件による振り分けなど - Excelだけで完結するか
他のアプリやブラウザの操作が必要か - 例外はどれくらいあるか
毎回同じ形式なのか、頻繁に人の判断が入るのか
この記事では、この5点を判断軸として使っていきます。
先に結論|関数・Power Query・VBA・RPAの使い分け
まずは4つの方法の違いを整理します。
| 方法 | 向いている転記 | 得意な範囲 | 選ぶ目安 |
|---|---|---|---|
| 関数・参照 | 値の参照・連動 | Excel中心 | コピーせず参照で済む |
| Power Query | CSV・複数Excelの取得・整形 | データ処理 | 同じ取込・加工を繰り返す |
| VBA | Excel中心の定型操作 | 手順制御 | 複数操作を一連で動かす |
| RPA | システム⇔Excelなど | 複数アプリ | 画面操作まで必要 |
これは厳密な境界線ではなく、最初に検討する方法を決めるための目安です。
実際には、Power QueryとVBAを組み合わせたり、Excelと外部サービスを別の方法で連携したりするケースもあります。
また、ExcelにはOffice Scriptsなど、今回紹介する4つ以外の自動化手段もあります。Office ScriptsではExcel上の操作をスクリプト化でき、Power Automateと組み合わせることもできます。この記事では選択肢を増やしすぎないため、小さな会社の転記作業を整理するときに判断しやすい関数・Power Query・VBA・RPAの4つに絞って解説します。
重要なのは、下へ進むほど優れているわけではないことです。
参照で解決するならVBAを作る必要はありませんし、CSVでデータを受け渡せるなら、画面操作を自動化しなくてもよい場合があります。
ここから、それぞれの方法がどんな転記に向いているのかを具体的に見ていきましょう。
Excel関数が向くのは「値を参照・連動させたい」転記
毎回同じ値をコピーしているなら参照で済むことがある
たとえば、「顧客一覧シートの名前や住所を、請求書用のシートにも毎回コピーしている」という作業です。
このような転記は、コピーするのではなく元データを参照する形へ変えられる可能性があります。
同じブック内の別シートを参照したり、条件に一致するデータを検索して表示したりすれば、「一覧から探して書き写す」という作業自体をなくせます。
たとえばXLOOKUPなどの検索系関数が使える環境なら、顧客番号などをもとに、対応する顧客名や住所を表示するといった使い方ができます。
向いているのは、値を「表示したい」「連動させたい」ことが中心の転記です。
関数で無理に処理を増やしすぎない
関数・参照は、一番小さく解決できる有力な方法です。
一方で、毎月新しいファイルが増える、複数ファイルをまとめる、毎回同じ整形を行う、数式が何重にも組み合わさる、といった処理まで関数だけで実現しようとすると、仕組みが分かりにくくなることがあります。
数式が長くなり、作った本人しか仕組みを理解できない状態になれば、手作業とは別の保守負担が生まれます。
参照・連動で小さく解決できるなら関数。データの取込や整形を繰り返すなら、次のPower Queryも候補にする。
このくらいの分け方から始めると判断しやすくなります。
Power Queryが向くのは「定型データを取り込み・整形したい」転記
CSVや毎月届くExcelを繰り返し処理する
Power Queryは、データを取得し、必要な形に変換してExcelへ読み込むための機能です。
対応するExcelでは、ExcelブックやCSVなどをデータソースとして取り込み、Power Query上で変換処理を設定できます。
利用できる機能やデータソースにはExcelのバージョンや利用環境による違いがあるため、実際に導入するときは使用環境も確認してください。
たとえば、
という作業です。
元データの構造や接続条件が安定していれば、一度作ったクエリを更新することで、設定した処理を繰り返し適用できます。
複数ファイルの結合や同じ整形を繰り返す
毎月届く同じ形式のExcelファイルを、1つの集計表へまとめるといった処理もPower Queryの候補です。
たとえば、
東京支店.xlsx
大阪支店.xlsx
名古屋支店.xlsx
のようなファイルが毎月届き、それぞれ同じ列構成になっているなら、人が3つのファイルを開いてコピーする代わりに、まとめて取り込める可能性があります。
向いている場合
- CSVを繰り返し取り込む
- 同形式のExcelをまとめる
- 毎回同じ列を削除する
- データを結合する
- 同じ加工を繰り返す
注意したい場合
- 列名やデータ構造が頻繁に変わる
- ファイルごとに形式が大きく違う
- 毎回、人が内容を見ながら判断する必要がある
このような場合は、まず元データの形式を安定させられないか確認することも重要です。
画面操作そのものを自動化する機能ではない
Power Queryが得意なのは、データの取得・変換・結合・更新です。
一方で、「業務システムを開く」「ボタンをクリックする」「画面上の項目を操作する」といった、人が画面上で行っている操作そのものを自動化する用途とは性格が異なります。
画面操作まで必要なら、後で紹介するRPAなど別の方法を検討します。
VBAが向くのは「Excel中心の細かな手順をまとめたい」転記
コピー・判定・貼り付け・保存などを一連で動かす
VBAは、Officeアプリケーションを拡張・自動化するためのプログラミング言語です。
たとえば、
といった一連の処理です。
こうした複数のExcel操作を、決まった順番で実行したい場合にVBAが候補になります。
ボタンを押したときに一連の処理を実行する、といった仕組みも作れます。
なお、VBAはExcelの中だけでしか使えないものではありません。
VBAはExcelを含むOfficeアプリケーションを拡張するための仕組みで、他のOfficeアプリとの連携などにも利用できます。
この記事では、分かりやすく「Excelを中心とした細かな手順制御に向く方法」と捉えてください。
柔軟な分、作った後の保守も考える
VBAは細かな処理を作れる一方、自由度が高いからこそ保守も考える必要があります。
たとえば、
- 列の追加
- シート名の変更
- ファイル名や保存場所の変更
- 元データの構造変更
などによって、想定どおり動かなくなる場合があります。
また、「作った人しか直せない」状態になると、担当者変更のたびに困る可能性があります。
そのため、
- 参照で済むなら参照
- 取込・整形ならPower Query
- それでは足りない細かな一連操作ならVBA
という順番で考えると、仕組みを必要以上に複雑にせずに済みます。
向いている場合
Excel中心で、取込や整形だけでは終わらない複数の操作を、一連の手順として実行したい場合。
慎重に考えたい場合
参照やPower Queryで十分な場合や、複雑なマクロを保守できる人がいない場合。
RPAが向くのは「Excel以外のシステムまで操作する」転記
ブラウザや業務システムとExcelをまたぐ
RPAは、パソコン上で行っている定型的な操作を自動化するための仕組みです。
代表例の1つであるMicrosoft Power Automateのデスクトップフローでは、Excelだけでなく、Web・デスクトップアプリケーションなどをまたぐルールベースの処理を自動化できます。
たとえば、
といった、Excelだけでは完結しない処理です。
特に、Web画面やデスクトップアプリを人が操作しながらExcelへ転記している場合は、RPAを検討する余地があります。
CSVなどで受け渡せるならRPAを使わない選択肢もある
ただし、ここで重要な判断があります。
「外部システムがあるからRPA」とは限りません。
まず、そのシステムからCSVやExcelなどのデータを出力できないか確認してください。
たとえば、
という流れで済むなら、Excelへ転記するために画面操作そのものを自動化しなくてもよい可能性があります。
データで受け渡す方法と画面操作を自動化する方法では、仕組みの性格が異なります。
画面レイアウトの変更や操作対象の変更などがあれば、UIを操作する自動化は修正が必要になることもあります。
そのため、まずデータとして受け渡せないかを確認し、それが難しい場合にRPAを検討するという順番がおすすめです。
向いている場合
- Excel以外のアプリ操作が必要
- Webやデスクトップ画面をまたぐ
- 決まった画面操作を繰り返す
- データだけでは受け渡しにくい
先に別方法を確認したい場合
- CSVを出力できる
- Excelファイルとして取得できる
- APIなどデータ連携の手段が用意されている
- そもそも別システムへ転記する必要をなくせる
RPAを使うこと自体が目的ではありません。
実際の転記作業ならどれを選ぶ?6つの例
ここまでの内容を、実際の転記作業に当てはめてみます。
| 例 | 転記作業 | 最初に検討する候補 |
|---|---|---|
| 1 | 同じExcel内の別シートへ顧客名や住所を表示する | 関数・参照 |
| 2 | 毎月ダウンロードする売上CSVを管理表用に整形する | Power Query |
| 3 | 毎月届く同形式の支店別Excelを1つにまとめる | Power Query |
| 4 | 条件抽出→別シートへ転記→書式変更→保存まで行う | VBA |
| 5 | 業務システムからCSVを出力できる | CSV+Power Queryなど |
| 6 | 画面操作でしか取得できない情報をExcelへ登録する | RPA |
例1|同じExcel内の別シートへ顧客情報を表示する
顧客一覧にすでに名前・住所があり、請求書シートにも同じ内容を表示したい。
この場合は「転記を自動化する」というより、参照に変えてコピーそのものをやめられないかを最初に考えます。
→ 関数・参照候補
例2|毎月の売上CSVを管理表用に整形する
毎月同じシステムからCSVをダウンロードし、
- 不要列を削除
- 列順を変更
- 必要な形式に変換
している。
→ Power Query候補
例3|毎月届く支店別Excelを1つにまとめる
各支店から同じ構造のExcelが届き、人が1つずつ集計表へコピーしている。
→ Power Query候補
例4|抽出から保存まで複数のExcel操作がある
条件に合う行を選び、別シートへ転記し、書式を変更して保存するなど、Excel上で複数の操作を順番に行っている。
→ VBA候補
例5|業務システムからCSVを出力できる
業務システムのデータをExcelで使いたいが、CSV出力機能が用意されている。
→ まずCSV+Power Queryなどを検討
ここが重要です。
外部システムが関係していても、データとして受け渡せるならRPAを使わずに済む可能性があります。
例6|画面操作でしか取得できない情報をExcelへ登録する
ブラウザや業務システムを開き、人が画面を操作して情報を確認し、その内容をExcelへ入力している。
→ RPA候補
ただし、本当に画面操作しか方法がないかは先に確認します。
迷ったら5つの質問で選ぶ
まだ判断できない場合は、次の質問を上から順番に確認してください。
- 転記せず参照できる? YES → 関数・参照
- 定型データを繰り返し取り込む? YES → Power Query
- Excel上の複数操作を順番に行う? YES → VBA
- 他アプリの画面操作が必要? YES → RPA
- 例外や人の判断が多い? YES → 定型部分だけ自動化
1. そもそも転記せず、同じデータを参照できないか?
YES → 関数・参照、または管理方法の統合を検討
同じ情報を何度もコピーしているだけなら、最初にここを確認します。
2. CSVやExcelなど、形の決まったデータを繰り返し取り込むか?
YES → Power Queryを検討
毎月・毎週など、同じようなファイルを同じ方法で加工している場合です。
3. Excel上の複数操作を、決まった順番で行う必要があるか?
YES → VBAを検討
取込・整形だけではなく、条件判定・転記・書式変更・保存などが続く場合です。
4. ブラウザや業務システムなど、他のアプリの画面操作が必要か?
YES → RPAを検討
ただし、その前にCSV・Excel・APIなど、データとして受け渡せる方法がないかを確認します。
5. 例外が多く、人の判断が毎回必要か?
YES → 全部を自動化せず、定型部分だけの自動化を検討
たとえば、
という形でも構いません。
すべてを無人化することだけが自動化ではありません。
人が繰り返している定型部分だけを仕組みに置き換えることで、作業負担や転記ミスの機会を減らせる可能性があります。
どこまでを自動化すべきか迷う場合は、「定型業務とは?自動化しやすい仕事・向かない仕事を具体例で解説」も参考にしてください。
Excel転記を自動化する前に確認したい注意点
元データの形式が毎回変わらないか
列名、列順、ファイル形式、シート構成などが頻繁に変わると、自動化した処理も修正が必要になります。
毎回違うデータを無理に自動化する前に、出力側の形式を統一できないかを確認してください。
自動化より先に、業務ルールを整えた方が簡単に解決することもあります。
転記後に人の確認が必要な項目はないか
自動化したからといって、確認工程まで必ずなくす必要はありません。
特に、
- 金額
- 顧客情報
- 契約内容
- 請求情報
- 外部へ送信するデータ
など、誤りの影響が大きい項目では、人の確認を残す設計も選択肢です。
「入力した人が確認する」から「自動処理した結果を人が確認する」へ変えるだけでも、業務の形は変わります。
ファイル名や保存場所が変わったときどうするか
自動化は、一定のルールを前提に作られることが多くあります。
たとえば、
- 保存フォルダーを変えた
- ファイル名の付け方を変えた
- シート名を変更した
- 列を追加・削除した
といった変更が、既存の処理へ影響する場合があります。
そのため、仕組みだけでなく、
「ファイルはここへ保存する」
「この列名は変えない」
といった運用ルールも一緒に決めておくと管理しやすくなります。
作った仕組みを誰が直すのか
VBAやRPAなどで複雑な自動化を作る場合は、完成した瞬間だけではなく、半年後・1年後に誰が保守するかも考えておきましょう。
- 処理の目的を残す
- 変更してはいけない部分を記録する
- ファイルやフォルダーのルールを決める
- 必要以上に複雑な処理を作らない
といった工夫が重要です。
また、マクロや自動化ツールの利用可否は会社のセキュリティ方針によって異なる場合があります。
業務システムの認証情報や顧客データを扱う場合は、アクセス権や認証情報の管理も含めて検討してください。
最初から完全自動化を目指さない
小さな転記作業を減らすために、複雑で保守しにくい仕組みを作ってしまえば、別の負担が増える可能性があります。
MERVELTAでは、
という順番で考えることを大切にしています。
人が最後に確認する半自動でも構いません。
まずは小さく作り、安定して使えることを確認してから範囲を広げる方が、現場で続けやすい仕組みになります。
Excel転記の自動化でよくある質問
Excelの転記は関数だけで自動化できますか?
値を参照・連動させることが目的なら、関数や参照で解決できる場合があります。
一方で、毎月ファイルを取り込んで同じ整形をしたり、複数の操作を決まった順番で実行したりする場合は、Power QueryやVBAなど別の方法が適していることがあります。
まずは「コピーしなくても表示できないか」を確認してみてください。
Power QueryとVBAはどちらを使うべきですか?
優劣ではなく、何を自動化したいかで考えます。
- データの取得・整形・結合・更新が中心 → Power Query
- Excel上の複数操作を一連の手順にしたい → VBA
が大まかな目安です。
実際の業務では両方を組み合わせるケースもあるため、「Power QueryかVBAか」の二者択一とは限りません。
Power Queryで複数のExcelファイルをまとめられますか?
似た構造・形式を持つ複数ファイルを、フォルダーから取り込んでまとめる方法があります。
ただし、ファイルごとに列名や構成が大きく異なる場合は、そのままでは想定どおり処理できないことがあります。
RPAを使えばExcel転記をすべて自動化できますか?
RPAでは、Excel・Web・デスクトップアプリなどをまたぐ幅広い定型操作を自動化できますが、すべての転記を無理にRPAへ置き換える必要はありません。
画面変更への対応、例外処理、保守、認証情報の管理なども考える必要があります。
CSVやExcelなどデータとして受け渡せるなら、画面操作を自動化しなくても解決できる可能性があります。
VBAを覚えないとExcel転記は自動化できませんか?
いいえ。
参照・関数やPower Queryだけで解決できる転記もあります。
「Excelを自動化する=VBAを覚える」と考えるのではなく、まずこの記事の5つの質問で作業を分類し、VBAが必要になった段階で検討すれば十分です。
Office ScriptsとVBAは何が違いますか?
どちらもExcel上の操作を自動化できる仕組みですが、設計されている環境や連携方法に違いがあります。
Office ScriptsはPower Automateと組み合わせることもできます。利用できる環境やライセンス条件があるため、導入時には最新のMicrosoft公式情報を確認してください。
この記事では、Excel転記の基本的な選び方を分かりやすくするため、タイトルどおり関数・Power Query・VBA・RPAを中心に整理しています。
紙やPDFからExcelへの入力も、この記事の方法で自動化できますか?
紙やPDFが元になっている場合は、「転記」より前のデータ入力工程に課題がある可能性があります。
フォーム化やOCRなど、今回とは別のアプローチが必要になるため、「データ入力を自動化する方法|紙・PDF・フォームの手入力を減らす5つの方法」をご覧ください。
まとめ|一番高度な方法ではなく、一番小さく解決できる方法を選ぶ
Excelの転記作業を自動化するときは、最初から高度な仕組みを作る必要はありません。
判断の順番をもう一度整理します。
- 同じ情報をコピーしているなら、まず転記自体をなくせないか確認する
- 値を参照・連動させるだけなら、関数・参照
- CSVや複数Excelの取込・整形を繰り返すなら、Power Query
- Excel中心の複数操作を一連で動かすなら、VBA
- 他のアプリや業務システムの画面操作まで必要なら、RPA
- 外部システムがあっても、CSVなどで受け渡せるならRPAを使わずに済む可能性もある
- 例外が多い場合は、すべてを自動化せず定型部分だけを自動化する
- 作るときは、元データの安定性と誰が保守するかまで考える
大切なのは、「どのツールが一番すごいか」ではありません。
今の面倒な仕事を、一番小さい仕組みでどこまで減らせるか。
まずは、自分が繰り返している転記作業を1つだけ選んでみてください。
そして、
転記元
転記先
加工内容
頻度
例外
の5つを書き出します。
それだけでも、
「これは参照で済みそう」
「Power Queryを調べるべきだ」
「Excel操作が多いからVBA候補だ」
「システムの画面操作があるからRPAも検討しよう」
と、次に調べるべき方法が見えやすくなります。
自動化は、複雑な仕組みを作ることが目的ではありません。
面倒な仕事を、必要な分だけ小さくしていく。
そこから始めてみてください。