メインコンテンツへスキップ

Kutools for Office — 1つのスイート、5つのツールで、もっと多くのことを成し遂げましょう。

複数のワークシートやワークブックで値を素早く検索する方法は?

Author: Sun Last Modified: 2025-08-26

特定の値を、異なるワークシートや複数のワークブックで検索したいと感じたことはありませんか?これは、大規模なプロジェクトや月次レポート、複数ファイルで管理された情報を統合する時などによくあるシナリオです。手動で各ワークシートやファイルを探すのは非常に時間がかかるだけでなく、ミスも発生しやすくなります。本チュートリアルでは、1つのワークブック内や複数のワークブック、数式や統合データを利用した場合など、さまざまなシーンに対応した効率的な検索方法をご紹介します。これらの方法は、日常のExcel作業やデータ分析プロジェクトで実際に直面するニーズ解決に役立ちます。

検索と置換機能でワークブック内の複数ワークシートから値を検索する方法

VBAを使ってフォルダ内すべてのワークブックから値を検索する方法

Kutools for Excelで複数の開いているワークブック全体から値を素早く検索する方法 good idea3

Excel数式で複数ワークシートにまたがって値を検索する方法


検索と置換機能でワークブック内の複数ワークシートから値を検索する方法

Excelの「検索と置換」機能は、同一ワークブック内の複数ワークシートから特定の値を素早く探し出すための、シンプルで効果的な方法です。この方法は、どのワークシートを検索するか把握している場合や、データが比較的整理されているファイルに特に便利です。異なるファイルや閉じたワークブックには対応していませんが、簡単に素早く検索できる便利な方法です。

1.まず、Ctrlキーを押しながらシートタブバー上の各ワークシートをクリックし、検索対象とするワークシートを選択します。これにより、選択したすべてのワークシートで同時に検索を実行できます。スクリーンショット参照:

A screenshot of selecting multiple sheet tabs in Excel using the Ctrl key

2. 必要なワークシートを選択したら、Ctrl + Fを押して「検索と置換」ダイアログボックスを開きます。検索タブの「検索内容」欄に探したい値を入力し、「すべて検索」ボタンをクリックします。すると、選択したワークシート上で検索値を含むすべてのセルが一覧で表示され、場所も確認できます。スクリーンショット参照:

A screenshot of the Find and Replace window in Excel showing the Find what field

ヒント: 検索と置換ツールは、開いていて表示されている選択済みのワークシート内のみを検索します。追加のワークシートまで検索範囲を広げたい場合は、上記の手順で選択してください。ワークシートを選択し忘れてしまった場合は、選択に追加後、操作をやり直すだけです。

注意事項: この方法は、閉じているまたは非表示のワークブックを検索できず、セルを自動でハイライトしません。結果一覧のみが表示されますので、ナビゲーションの参考にしてください。

トラブルシューティング:期待した検索結果が表示されない場合は、ワークシート選択や、フィルターやセルの保護設定が検索を妨げていないか確認してください。


複数のシートやワークブックにわたって値を簡単に検索して置換

Kutools for Excelの高度な「検索と置換」機能は、複数のシートや開いているすべてのワークブックにわたって値を検索して置換する効率的な方法を提供します。この高度な機能を使用することで、大規模なデータセットを扱う際に時間を節約し、エラーを排除でき、Excelでの作業をより迅速かつ正確に行うことができます。
A screenshot of Kutools for Excel's Find and Replace feature in action

Kutools for Excel - 必要なツールを300以上搭載し、Excelの機能を大幅に強化します。永久に無料で利用できるAI機能もお楽しみください!今すぐ入手


VBAを使ってフォルダ内すべてのワークブックから値を検索する方法

特定の値を、フォルダに保存されている複数のワークブック(未開封ファイルも含む)から検索したい場合、Excelの標準機能だけでは直接できません。この場合、VBA(Visual Basic for Applications)のマクロを使えば、フォルダ内の各ワークブックを自動的に順番に開き、すべてのワークシートを検索して一致箇所を記録できます。この方法は、定期監査やアーカイブファイル、バッチファイル内の値チェックなどにも非常に有効です。

1.まず、Excelで新しいワークブック(空白でも可)を開き、検索結果を表示したいセル(通常A1)を選択します。Alt + F11Microsoft Visual Basic for Applicationsエディターウィンドウを起動します。

2. VBAエディター内で「挿入」>「モジュール」と進み、新しいモジュールを作成して、下記のVBAコードをウィンドウに貼り付けます。

VBA: フォルダ内すべてのワークブックから値を検索するマクロ。

Sub SearchFolders()
'UpdatebyKutoolsforExcel20200913
    Dim xFso As Object
    Dim xFld As Object
    Dim xStrSearch As String
    Dim xStrPath As String
    Dim xStrFile As String
    Dim xOut As Worksheet
    Dim xWb As Workbook
    Dim xWk As Worksheet
    Dim xRow As Long
    Dim xFound As Range
    Dim xStrAddress As String
    Dim xFileDialog As FileDialog
    Dim xUpdate As Boolean
    Dim xCount As Long
    Dim xAWB As Workbook
    Dim xAWBStrPath As String
    Dim xBol As Boolean
    Set xAWB = ActiveWorkbook
    xAWBStrPath = xAWB.Path & "\" & xAWB.Name
    On Error GoTo ErrHandler
    Set xFileDialog = Application.FileDialog(msoFileDialogFolderPicker)
    xFileDialog.AllowMultiSelect = False
    xFileDialog.Title = "Select a forlder"
    If xFileDialog.Show = -1 Then
        xStrPath = xFileDialog.SelectedItems(1)
    End If
    If xStrPath = "" Then Exit Sub
    xStrSearch = "KTE"
    xUpdate = Application.ScreenUpdating
    Application.ScreenUpdating = False
    Set xOut = Worksheets.Add
    xRow = 1
    With xOut
        .Cells(xRow, 1) = "Workbook"
        .Cells(xRow, 2) = "Worksheet"
        .Cells(xRow, 3) = "Cell"
        .Cells(xRow, 4) = "Text in Cell"
        Set xFso = CreateObject("Scripting.FileSystemObject")
        Set xFld = xFso.GetFolder(xStrPath)
        xStrFile = Dir(xStrPath & "\*.xls*")
        Do While xStrFile <> ""
            xBol = False
            If (xStrPath & "\" & xStrFile) = xAWBStrPath Then
                xBol = True
                Set xWb = xAWB
            Else
                Set xWb = Workbooks.Open(Filename:=xStrPath & "\" & xStrFile, UpdateLinks:=0, ReadOnly:=True, AddToMRU:=False)
            End If
            For Each xWk In xWb.Worksheets
                If xBol And (xWk.Name = .Name) Then
                Else
                Set xFound = xWk.UsedRange.Find(xStrSearch)
                If Not xFound Is Nothing Then
                    xStrAddress = xFound.Address
                End If
                Do
                    If xFound Is Nothing Then
                        Exit Do
                    Else
                        xCount = xCount + 1
                        xRow = xRow + 1
                        .Cells(xRow, 1) = xWb.Name
                        .Cells(xRow, 2) = xWk.Name
                        .Cells(xRow, 3) = xFound.Address
                        .Cells(xRow, 4) = xFound.Value
                    End If
                    Set xFound = xWk.Cells.FindNext(After:=xFound)
                Loop While xStrAddress <> xFound.Address
                End If
            Next
            If Not xBol Then
            xWb.Close (False)
            End If
            xStrFile = Dir
        Loop
        .Columns("A:D").EntireColumn.AutoFit
    End With
    MsgBox xCount & " cells have been found", , "Kutools for Excel"
ExitHandler:
    Set xOut = Nothing
    Set xWk = Nothing
    Set xWb = Nothing
    Set xFld = Nothing
    Set xFso = Nothing
    Application.ScreenUpdating = xUpdate
    Exit Sub
ErrHandler:
    MsgBox Err.Description, vbExclamation
    Resume ExitHandler
End Sub

3. F5キーを押すか「実行」ボタンをクリックしてマクロを実行します。「フォルダーを選択」ダイアログが表示され、検索対象のワークブックが保存されたフォルダーを選択できます。スクリーンショット参照:

A screenshot of the Select a Folder dialog in Excel for choosing a folder to search

4. OKをクリックします。検索が完了すると、合計で見つかったセル数をお知らせするメッセージボックスが表示されます。スクリーンショット参照:

A screenshot of a dialog showing the number of cells found during a search in Excel

5. メッセージを閉じるにはOKをクリックします。値が見つかった場所はすべて新しいワークシートに一覧され、ワークブック名、ワークシート名、セル参照、実際のセル内容が確認できます。

A screenshot of the list of found cells in Excel after using VBA search

ヒント: 現在の検索キーワードはVBA内で「KTE」に設定されています。xStrSearch = "KTE"というコードを、お好みの値に変更してカスタマイズ可能です。

注意事項: 実行前に、関連するワークブックをすべて保存して閉じておいてください(マクロを実行するワークブックのみ開いていても構いません)。大量または複雑なExcelファイルが入っているフォルダーの場合、処理に時間がかかることがあります。実行中はマクロを中断しないでください。

トラブルシューティング: エラーが発生する場合、すべてのファイルが正規のExcelワークブックであること(破損・パスワード保護されていないか)、マクロのセキュリティ設定が実行を許可しているかを確認してください。マクロが最後まで終了しない場合は、まず少数のファイルで試してみてください。


Kutools for Excelで複数の開いているワークブック全体から値を素早く検索する方法

すでにExcelで複数のワークブックを開いている場合、Kutools for Excelの専用「検索と置換」パネルを使えば、検索作業をより簡単かつ管理しやすく行えます。スクリプトや複雑なセットアップが不要で、複数ファイルを同時に扱うことが多い方や、簡単に検索したい方にとって効率的で便利なツールです。

Kutools for Excelは、300以上の高度な機能を提供し、複雑なタスクを簡素化し、創造性と効率を向上させます。 AI機能と統合され、Kutoolsは正確にタスクを自動化し、データ管理を容易にします。Kutools for Excelの詳細情報...無料トライアル...

1.いずれかの開いているワークブックで、 Kutools タブに移動し、 ナビゲーションを選択します。次に、 検索と置換 ボタンFind and Replace button をクリックして、 検索と置換 パネル(通常はExcelウィンドウの左側に表示)を開きます。スクリーンショット参照:

A screenshot of the Find and Replace pane in Excel

2. 検索 タブで、検索したい値を 検索内容テキストボックスに入力します。「 すべてのワークブック 」を 検索範囲 ドロップダウンメニューから選択することで、すべての開いているワークブックを対象に検索できます。その後、 すべて検索 をクリックすると、合致するセルが一覧で即座にリスト表示され、それぞれの場所も確認できます。スクリーンショット参照:
A screenshot of the Kutools Find and Replace pane with the 'Find what' field filled out

ヒント: Kutools for Excelの高度な検索と置換ユーティリティは、すべての開いているワークブックだけでなく、特定のワークシート、現在のワークブック、現在のワークシート、あるいは現在の選択範囲だけで検索や置換を行うことも可能です。状況に応じて柔軟に設定できます。
A screenshot of Kutools for Excel’s Find and Replace dialog showing results across all workbook

注意事項: 検索対象としたいワークブックは、事前にすべてExcel上で開いておく必要があります。このツールは閉じているファイルの検索には対応していません。

トラブルシューティング: 一部ファイルが検索結果に表示されない場合は、それらがExcel上に完全に読み込まれていて、保護ビューや読み取り専用モードになっていないか確認してください。これらのモードでは検索アクセスが制限されることがあります。

デモ:Kutools for Excelで複数の開いているワークブック全体から値を検索

 
Kutools for Excel: あなたの指先に 300 以上の便利なツールが集結!永久無料のAI機能をお楽しみください!今すぐダウンロード!

Excel数式で複数ワークシートにまたがって値を検索する方法

ワークブック内に複数の既知のワークシート名があり、それらの中から特定の値が存在するかどうか、またその場所を確認したい場合、Excelの数式を用いて動的に検索できます。この方法は、検索結果を常に自動更新しておきたい場合や、ワークシートリストが定期的または別表で管理されている際に特に適しています。

この方法では、あらかじめ検索対象となるすべてのワークシート名を把握・一覧化しておく必要があります。自動チェックやダッシュボード、都度全体検索したくない場面でサマリー参照を作成したい場合などに最適です。

メリット: データの変化に伴い結果が自動で更新される・スクリプトやアドイン不要・すべてワークブック内で完結。
デメリット: ワークシート名が頻繁に変わる場合や、非常に多くのワークシートを持つ場合には向きません。

例: Sheet1Sheet2Sheet3の3つのワークシートがあり、「Invoice123」という値がA1セルに、またはどこかに存在するかを判別したい場合を想定します。

ステップ1. ワークシート名リスト(D2:D4:D2=Sheet1、D3=Sheet2、D4=Sheet3)を用意し、E1に検索したい値(例:「Invoice123」)を入力します。そして、F2セルに次の数式を入力します。

=IF(COUNTIF(INDIRECT("'"&D2&"'!A:A"), $E$1) >0, "Found", "Not Found")

ステップ2. F2からF4に数式をドラッグすれば、D2:D4に列挙した全ワークシートに対して「発見」または「未発見」が返されます。

仕組み: 数式ではINDIRECT関数で各ワークシートへの参照を作成し、COUNTIF関数でE1の値が各ワークシートのA列内(A:A)に存在するかをチェックします。必要に応じて範囲(A:A)を他の列や特定の範囲(例:A1:Z100)に変更することも可能です。

追加ヒント: 値が含まれるワークシート名を取得したい場合は、次の配列数式を使用します(旧ExcelではCtrl + Shift + Enterで、Microsoft365/Excel2021以降では通常の数式として入力)。

=TEXTJOIN(", ",TRUE,IF(COUNTIF(INDIRECT("'"&D2:D4&"'!A:A"), $E$1)>0, D2:D4, ""))

この数式では、値が見つかったワークシート名がカンマ区切りリストとして返されます。INDIRECT関数は開いたワークブックでしか機能しないため、閉じたファイルは検索できないことにご注意ください。

注意事項: ワークシート名が変更・削除されている場合、数式は#REF!エラーになります。必ずワークシート名リストが正しいか確認しましょう。大きなワークブックでは、INDIRECTベースの数式がパフォーマンスを低下させる場合があります。

トラブルシューティング: エラーが表示された場合は、参照しているワークシートがすべて存在し、検索範囲も正しいか確認してください。動的なワークシートリストが必要な場合は、名前付き範囲やデータ検証を活用して自動更新できるようにすると便利です。


関連する記事:


最高のオフィス業務効率化ツール

🤖 Kutools AI Aide:データ分析を革新します。主な機能:Intelligent Executionコード生成カスタム数式の作成データの分析とグラフの生成Kutools Functionsの呼び出し……
人気の機能重複の検索・ハイライト・重複をマーキング空白行を削除データを失わずに列またはセルを統合丸める……
スーパーLOOKUP複数条件でのVLookup複数値でのVLookup複数シートの検索ファジーマッチ……
高度なドロップダウンリストドロップダウンリストを素早く作成連動ドロップダウンリスト複数選択ドロップダウンリスト……
列マネージャー指定した数の列を追加列の移動非表示列の表示/非表示の切替範囲&列の比較……
注目の機能グリッドフォーカスデザインビュー強化された数式バーワークブック&ワークシートの管理オートテキスト ライブラリ日付ピッカーデータの統合セルの暗号化/復号化リストで電子メールを送信スーパーフィルター特殊フィルタ(太字/斜体/取り消し線などをフィルター)……
トップ15ツールセット12 種類テキストツールテキストの追加特定の文字を削除など)50種類以上のグラフガントチャートなど)40種類以上の便利な数式誕生日に基づいて年齢を計算するなど)19 種類の挿入ツールQRコードの挿入パスから画像の挿入など)12 種類の変換ツール単語に変換する通貨変換など)7種の統合&分割ツール高度な行のマージセルの分割など)… その他多数
Kutoolsはお好みの言語で利用可能 ― 英語、スペイン語、ドイツ語、フランス語、中国語、その他40以上の言語に対応!

Kutools for ExcelでExcelスキルを強化し、これまでにない効率を体感しましょう。 Kutools for Excelは300以上の高度な機能で生産性向上と保存時間を実現します。最も必要な機能はこちらをクリック...


Office TabでOfficeにタブインターフェースを追加し、作業をもっと簡単に

  • Word、Excel、PowerPointでタブによる編集・閲覧を実現
  • 新しいウィンドウを開かず、同じウィンドウの新しいタブで複数のドキュメントを開いたり作成できます。
  • 生産性が50%向上し、毎日のマウスクリック数を何百回も削減!

全てのKutoolsアドインを一つのインストーラーで

Kutools for Officeスイートは、Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proをまとめて提供。Officeアプリを横断して働くチームに最適です。

Excel Word Outlook Tabs PowerPoint
  • オールインワンスイート — Excel、Word、Outlook、PowerPoint用アドインとOffice Tab Proが含まれます
  • 1つのインストーラー・1つのライセンス —— 数分でセットアップ完了(MSI対応)
  • 一括管理でより効率的 —— Officeアプリ間で快適な生産性を発揮
  • 30日間フル機能お試し —— 登録やクレジットカード不要
  • コストパフォーマンス最適 —— 個別購入よりお得