支店レポートには同じ種類の販売記録が含まれていますが、ヘッダーが異なる行から始まり、列名も異なります。記録を失わず、合計も変えずに1つの表にする必要があります。以下では、記録されたRowSpeakワークフローが、不一致の3つのExcelファイルを445件の確認済み販売記録に結合します。プロンプトをコピーし、結合を視聴し、結果をダウンロードしてご自身で確認できます。
主なポイント:
- ヘッダー位置や列名が異なるファイルの販売記録を1つの表に結合します。
- コピー可能なプロンプトを使って、日付ルールを設定し、欠損値を保持し、確認用のソース詳細を要求します。
- 記録された3ファイルの結果を確認: 445件の記録、2,944ユニット、売上10,989,500(元の通貨)。
- レポートで結合ファイルを使用する前に、ソース別の記録数と合計を確認します。
本当の問題は結合ではない
技術的には、結合は簡単な部分です。Excel、スクリプト、無料ツールは何年も前から多くのファイルの行を積み重ねることができました。週次の作業を遅くしているのは、結合の前に起きることです。つまり、ファイルが一致していないのです。
今週のあるファイルではヘッダーが1行目にあります。別のファイルでは、誰かが表の上にタイトルと日付を貼り付けたため、ヘッダーが4行目にあります。3つ目のファイルでは、同じ列を「Rev」と綴っていますが、他では「Revenue」としています。これについて助けを検索したことがあるなら、同じ仕事をしている人たちによる次のような投稿を見たことがあるでしょう。
- ある運用担当者は、毎週100以上のExcelファイルを結合する必要があり、その過程で書式やデータを失うことを心配していると述べていました(r/excel)。
- 別の人は、ヘッダーが先頭から始まらず、データの上下にランダムな情報があったため、毎日50以上のファイルをコピー&ペーストで結合していました(r/excel)。
- プログラマーではない人が、Pythonで一貫性のないワークブックのバッチを結合しようとして、ドキュメントで行き詰まりました(r/learnpython)。
- ある人は多くのファイルから特定のセルを取得するマクロを書きましたが、セル単位で記録され、実行が遅すぎました(r/excel)。
これらは、異なる人、システム、月から来た実際の業務ファイルがどのようなものかを示しています。結合は単純です。不一致の解消が仕事なのです。
ファイルを結合する方法の選択
Excelツールやスクリプトはファイルを結合できます。役立つ問いは、あなたの特定の差異にどれだけの設定が必要か、そして結果をどのように確認するかです。
オプション1: 結合ツールを購入する
専用の結合ツールは、ファイルが同じレイアウトを共有している場合に高速です。通常、ワンクリックで多くのワークブックの行を積み重ねます。きれいで同一のエクスポートには、まさにうってつけです。
選択したツールが、最初の行より下のヘッダーを検出できるか、異なる名前を同じ列にマッピングできるか、スキップされた行を報告できるかを確認してください。一致するレイアウトを積み重ねるだけのツールでは、これらのエクスポートを正しく結合する前に準備が必要です。
オプション2: Power Query
Power Queryは、ファイルが一貫している場合に便利なオプションです。毎週のエクスポートがすべて同じシステムから同じ列で来るなら、クエリを一度作成して更新するのは良いワークフローであり、すでに所有しているExcel以外に費用はかかりません。
レイアウトが異なる場合、クエリにはそれらの差異に対するルールが必要です:
- 一部のファイルでヘッダーが2行目や5行目にある。クエリは1行目を指しているため、それらの列はずれたり消えたりします。
- 名前が変更された列。ある月のエクスポートでは「Region」が「Area」になり、クエリはそれを無関係な新しいフィールドとして扱います。
- データの途中にある合計行。それが通常の行であるかのように結合テーブルに流れ込み、合計が静かに狂います。
Power Queryは、適切な変換と列マッピングのルールがあれば、これらの差異に対応できます。エクスポートが変わるとそれらのルールを保守する必要があるため、その設定を誰が担当するかを検討してください。
オプション3: VBAまたはPythonを書く
マクロやスクリプトは、乱雑なファイルを含め、ほとんど何でも扱えます。コストは異なります。つまり、コードを所有することになります。上記の引用にあったセル単位のマクロは良い例です。技術的には機能しました。しかし、役に立たないほど遅く、次のファイルバッチで構造上の驚きがあるたびに、さらに編集作業が必要でした。Pythonのドキュメントで行き詰まった非プログラマーは、同じトレードオフの反対側に直面しました。つまり、そのアプローチは機能しますが、維持できる人にしか使えないのです。
スクリプトを書くのが好きなら、これは正当な道です。あなたの実際の仕事が運用や財務で、スクリプトは目的のための手段だったなら、本来の仕事の上にソフトウェアを保守していることになります。
「乱雑」とは実際に具体的に何を意味するか
「乱雑なファイル」は曖昧な不満ではありません。具体的なリストであり、おそらくほとんどに心当たりがあるでしょう:
- ヘッダーが1行目にない: 実際の表の上にタイトル、日付、または空白帯がある。
- データの上下にある注記: シート内に「Prepared by」、「Confidential」、または直前のコメントがある。
- 同じ列がファイルごとに異なる名前: 「Revenue」、「Rev」、「Sales Amount」。
- 結合セル: 地域ラベルが3行にまたがり、最初の行だけが値を持つ。
- 数値と日付がテキストとして保存されている: 「1,250」がテキスト、「2026/10/01」が文字列、そして合計が両方を静かにスキップする。
- 空白行が表を断片に分割している。
- データとして数えてはいけない合計行。下部にあることも、途中にあることもある。
これらのうち3つ以上が毎週のファイルに当てはまるなら、「ファイルを結合する」という枠組みは本当のタスクを隠していました。本当のタスクは、不一致のファイルを、すべての行が同じ意味を持つ1つの表に変えることです。それは別の仕事であり、別のアプローチが必要です。ファイルがすでに1つのワークブックにあり、値の正規化がまだ必要な場合は、別のデータクリーニングワークフローが役立ちます。
平易な言葉のルート
RowSpeakのExcel AIワークフローでは、ワークブックをアップロードし、どの記録が結合表に属するか、どの列が同じ意味か、欠損値をどう扱うかを説明します。その後、生成された表とそのチェックを確認します。
販売の結合では、元の販売記録ごとに1行を要求します。ソース参照を保持し、ファイル別の合計を要求し、不確かな値は空白のままにするようツールに指示します。そうすることで、誤ったマッピングがレポートに到達する前に見つけやすくなります。
記録された例: 不一致の3つの販売ワークブック
このデモでは、GitHubの販売統合プロジェクトから公開共有されている3つの合成練習用ワークブックを使用します。それらはラホール、カラチ、イスラマバードの同じ種類の販売詳細を表しています。これは顧客事例ではなく、練習データを使用した製品デモです。
以下の記録では、元のファイルのプレビュー、結合リクエスト、RowSpeakのサマリー、結合されたワークブックのプレビューを示します。長さは約2分37秒です。
ステップ1: ソースファイルの違いを確認する
3つのファイルすべてに販売記録が含まれていますが、単純なコピー&ペーストにはいくつかの修正が必要です:
| ソースワークブック | 異なる点 | 販売記録 |
|---|---|---|
branch_lahore.xlsx |
ヘッダーが4行目にあり、タイトル、注記、空白行の下にある | 140 |
branch_karachi.xlsx |
異なる列名、日/月/年の日付、Rs 5600のようなテキストとして保存された価格 |
160 |
branch_islamabad.xlsx |
異なる列名、5つの空白スペーサー行、欠損したカテゴリと単価 | 145 |
ラホール: 注記の下にあるヘッダーを見つける。 販売列にはProductID、Units Sold、Total Salesが含まれます。それらの上にあるテキストは販売記録ではありません。

カラチ: 名前を照合し、日付を正しく読む。 ここでは、Item_CodeはラホールのProductIDと同じ意味です。QtyはUnits Soldに対応し、RevenueはTotal Salesに対応します。26/12/2025のような日付は日/月/年として読む必要があります。

イスラマバード: 不完全な販売記録を保持する。 6行目は空白ですが、5行目には単価が欠損した有効な販売が含まれています。これらは別々に扱う必要があります。空の行をスキップし、販売はレビュー用に保持します。

ステップ2: 3つのファイルをアップロードして結合を説明する
RowSpeakで3つの.xlsxファイルをすべて選択します。このワークフローで使用されたプロンプトは、列の照合、日付形式、欠損値のルール、期待されるレビューサマリーを指定しています:
これら3つの支店販売ワークブックを1つのきれいな表に結合し、元の販売記録ごとに1行にしてください。
各ファイルの実際のヘッダーを見つけ、タイトル、注記、完全に空の行はスキップしてください。列は意味で照合してください:Date / Sale_Date / TransactionDate;ProductID / Item_Code / SKU;ProductName / Item_Name / Product;Category / Cat;Units Sold / Qty / QtySold;Unit Price / Price(Rs) / UnitPrice;Total Sales / Revenue / LineTotal。
出力列は次のとおり:Date, Branch, SKU, Product, Category, Quantity, Unit Price, Revenue, Source File, Source Sheet, Source Row。Branchはファイル名から取得してください。SKUはテキストとして保持してください。Karachiの日付はDD/MM/YYYYとして解析し、すべての日付をYYYY-MM-DDで表示し、Rs接頭辞付きの価格は通貨を変えずに数値に変換してください。
欠損フィールドのある記録を含め、すべての販売記録を保持してください。欠損しているCategoryとUnit Priceは空白のままにし、レビュー用に報告してください。推測、補完、重複排除、元のRevenueの再計算はしないでください。
ソースファイル別のサマリーを作成し、記録数、総Quantity、総Revenue、欠損フィールド数を示してください。除外された非データ行は別途報告してください。結合した表とレビューサマリーをcombined_branch_sales.xlsxにエクスポートしてください。
重要な指示は、すべての販売記録を保持することです。欠損したカテゴリによって実際の販売が消えてはいけません。既存の売上を保持するようツールに求めることで、列を標準化しながら合計を変えることも避けられます。
ステップ3: 結果を元のファイルと比較する
RowSpeakは445件の販売記録とソース別サマリーを返しました。以下のスクリーンショットは記録からのもので、数値は3つのソースワークブックとダウンロードした結果に対して独立に確認されました。

| 支店 | 記録数 | 総数量 | 売上、元のRs金額 |
|---|---|---|---|
| ラホール | 140 | 889 | 3,200,000 |
| カラチ | 160 | 1,239 | 4,954,300 |
| イスラマバード | 145 | 816 | 2,835,200 |
| 合計 | 445 | 2,944 | 10,989,500 |
行レベルの比較により、すべてのソース販売記録が1回ずつ現れ、要求された日付と価格の変換後に、その日付、支店、SKU、製品、カテゴリ、数量、単価、売上がソースと一致することが確認されました。売上は保持され、通貨変換はありませんでした。
出力には16件の欠損カテゴリと27件の欠損単価も保持されました。一部の記録は両方のフィールドが欠損しているため、これらは39件の販売記録に影響します。Review - Missing Fieldsシートがそれらを特定します。Excluded Rowsシートには、8つの非データ行がリストされています。ラホールの2つの導入行と1つの空白行、およびイスラマバードの5つの空白行です。
ステップ4: レポート作成前にエクスポートしたワークブックを開く
結合された表は一貫した列を使用し、ソースシートとソース行の参照を含みます。記録では、RowSpeakのワークブックプレビューにそれが表示されます:

記録されたCombined Branch Salesワークブック(.xlsx)をダウンロードする で同じ結果を確認できます。Summary by Source Fileから始め、次にCombined Salesを開いて、いくつかの行を元のファイルと照合してください。表を完全なものとして扱う前に、Review - Missing Fieldsを使用してください。
このエクスポートで確認すべき詳細が1つあります。画面上のサマリーには元のファイル名が表示されますが、ワークブックのSource File列にはfile-472e77ca-5ff0-4e.xlsxのようなシステムファイル名が含まれます。この例では、Branch、Source Sheet、Source Rowを使用して記録を追跡してください。引き継ぎで元のファイル名が必要な場合は、そのマッピングを明示的に要求し、エクスポートで確認してください。
この記録は、この3ファイルの結合を検証するものです。100ファイルの制限を確立したり、すべてのExcelレイアウトをテストしたりするものではなく、これらのソースファイルには小計行の削除をテストする小計行は含まれていません。
結合された表がレビューに合格したら、月次CSVレポートワークフローで使用するか、支店合計を必要とする同僚向けにダッシュボードに変換してください。
Power Queryをそのまま使うべき場合
ファイルとプロセスを維持する人の両方に合う方法を選んでください。
ファイルが毎回同じシステムから同じレイアウトで来る場合は、Power Queryを使用してください。常に同じ列、1行目のヘッダー、手動編集なしの月次エクスポートは、まさにPower Queryが得意とするものです。クエリを一度作成し、毎月更新すれば完了です。サポートされているExcelエディションで利用でき、新しいファイルが届いたときに更新できます。
エクスポートが変動し、ルールを言葉で説明したい場合は、平易な言葉のワークフローを試す価値があります。Excel内で明示的な変換を維持したい場合は、Power Queryを設定する価値があります。いずれにしても、結果を使用する前に、件数、合計、例外を比較してください。
よくある質問
ファイルはいくつまで扱えますか?
ここでのデモでは3つのワークブックを使用しています。より大きなバッチについては、アカウントの現在のアップロード制限を確認し、まず代表的なサンプルを試してください。この記録は100ファイルのバッチを検証するものではありません。
元のファイルは変更されますか?
いいえ。元のファイルは変更されません。出力は、確認、エクスポート、共有できる新しい結合データセットまたはレポートです。
CSVとPDFファイルはどうですか?
RowSpeakはExcel、CSV、PDFの入力をサポートしています。この記録はExcelのみを扱っています。PDFの表については、ワークブックデータと結合する前に、抽出された列と行を確認してください。
毎月実行されますか?
来月のファイルが届いたら、プロンプトを再利用できます。新しいバッチをアップロードし、変更されたヘッダーや形式を確認し、新しい合計をレビューしてください。ここに示すワークフローはユーザーが実行するもので、スケジュール処理を示すものではありません。
どうすれば試せますか?
現在のプランと利用可能な使用量を確認してください。小さなバッチから始め、ワークフローを拡大する前に、結果を手動チェックと比較してください。
次のファイルバッチをレビューする準備ができました
不一致のファイルを1つの表にまとめましょう。
次の支店レポートの期限前に、代表的な3つのファイルをアップロードしてください。上記のプロンプトを再利用し、結果を共有する前に記録数と売上合計を比較してください。
元のファイルは変更せず、レポートで使用する前に出力を確認してください。







