Как быстро найти нужное значение сразу в нескольких листах или книгах?
Вам когда-нибудь приходилось искать конкретное значение, которое может находиться на разных листах или даже в нескольких книгах Excel? Это распространённая задача — особенно при работе с крупными проектами, ежемесячными отчётами или при объединении данных из нескольких файлов. Ручной поиск по каждому листу или книге не только отнимает массу времени, но и повышает риск ошибок. В этом руководстве вы освоите несколько эффективных методов для быстрого поиска нужной информации — независимо от того, работаете ли вы с одной книгой, несколькими файлами или вам требуется решение на основе формул или объединённых данных. Эти подходы помогут решать реальные задачи, с которыми вы сталкиваетесь в повседневной работе в Excel или при реализации проектов по анализу данных.
Поиск значения в нескольких листах книги с помощью функции Поиск и замена
Поиск значения во всех книгах папки с помощью VBA
Быстрый поиск значения в нескольких открытых книгах с помощью Kutools для Excel ![]()
Поиск значения по нескольким листам с использованием формул Excel
Поиск значения в нескольких листах книги с помощью функции Поиск и замена
Встроенная функция Excel Поиск и замена — простой, но мощный инструмент для быстрого поиска нужных значений сразу на нескольких листах одной книги. Этот метод особенно удобен, если вы точно знаете, какие листы нужно проверить, или если ваши данные уже структурированы в одном файле. Он не поддерживает поиск по разным файлам или закрытым книгам, но обеспечивает мгновенный и удобный просмотр.
1. Для начала выберите вкладки листов, которые нужно включить в поиск: удерживайте клавишу Ctrl и последовательно щёлкайте по каждому нужному листу на панели вкладок. Это гарантирует, что поиск будет выполнен сразу по всем выбранным листам. См. снимок экрана:

2. После выбора нужных листов нажмите Ctrl + F, чтобы открыть диалоговое окно Поиск и замена. Введите искомое значение в поле Найти на вкладке Найти и нажмите кнопку Найти все. Excel немедленно покажет список всех ячеек на выбранных листах, содержащих ваше значение для поиска, с указанием их расположения. См. снимок экрана:

Совет: Инструмент «Поиск и замена» работает только с открытыми и видимыми выбранными листами. Если вы хотите расширить поиск на дополнительные листы, обязательно выберите их, как описано выше. Если вы случайно пропустили какой-то лист — просто повторите операцию, включив его в выделение.
Меры предосторожности: Этот метод не работает с закрытыми или скрытыми книгами и не выделяет ячейки автоматически — он лишь выводит результаты для навигации.
Устранение неполадок: Если ожидаемые результаты не отображаются, убедитесь, что вы правильно выбрали листы и что на них не включены фильтры или защита ячеек, которые могут скрывать данные или ограничивать поиск.
Легко Поиск и замена значения на нескольких листах и в нескольких книгах |
Kutools для ExcelПоиск и заменаобеспечивают эффективный способ поиска и замены значений сразу на нескольких листах или даже во всех открытых книгах. Благодаря этой продвинутой функции вы сможете Экономия времени и избежать ошибок при работе с большими объемами данных, делая задачи в Excel быстрее и точнее. |
![]() |
Kutools для Excel— расширьте возможности Excel более чем 300 необходимыми инструментами, чтобы ускорить и упростить свою работу, а также используйте функции искусственного интеллекта для более разумной обработки данных и повышения продуктивности.Получить сейчас |
Поиск значения во всех книгах папки с помощью VBA
Если вам нужно найти конкретное значение во всех книгах Excel, сохранённых в определённой папке (включая ещё не открытые файлы), стандартные средства Excel не справляются с этой задачей напрямую. В таком случае на помощь приходит макрос на VBA (Visual Basic for Applications): он автоматически откроет каждую книгу в папке, последовательно проверит все листы и зафиксирует расположение найденных совпадений. Этот подход особенно удобен для регулярных проверок или поиска данных в архивных и пакетных файлах.
1. Откройте новую (или пустую) книгу Excel. Выберите ячейку, в которую хотите поместить результаты поиска (обычно A1). Нажмите Alt + F11, чтобы запустить редактор Microsoft Visual Basic for Applications.
2. В редакторе VBA перейдите в меню Insert > Module, чтобы создать новый модуль, и вставьте в него следующий код 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 или кнопку Run, чтобы запустить макрос. Откроется диалоговое окно Выберите папку, в котором можно указать папку с книгами для поиска. См. снимок экрана:

4. Нажмите кнопку OK. После завершения поиска появится сообщение с общим количеством найденных ячеек, содержащих указанное значение. См. снимок экрана:

5. Нажмите кнопку OK, чтобы закрыть сообщение. Все найденные значения перечислены на новом листе, включая имя книги, имя листа, ссылку на ячейку и её точное содержимое для вашего анализа.

Совет: Текущий поисковый запрос задан в коде VBA как «KTE». Вы можете изменить его, заменив строку xStrSearch = "KTE" на любое другое искомое значение.
Меры предосторожности: Перед запуском убедитесь, что все соответствующие книги сохранены и закрыты (кроме той, в которой вы запускаете макрос — она может оставаться открытой). Обработка больших папок с множеством или сложными файлами Excel может занять некоторое время. Не прерывайте выполнение макроса.
Устранение неполадок: Если возникают ошибки, убедитесь, что все файлы представляют собой корректные рабочие книги Excel (не повреждены и не защищены паролем), а параметры безопасности макросов разрешают выполнение кода. Если макрос не завершается, попробуйте сначала запустить его на меньшем наборе файлов.
Быстрый поиск значения в нескольких открытых книгах с помощью Kutools для Excel
Когда нужно выполнить поиск сразу в нескольких книгах, уже открытых в текущем сеансе Excel, Kutools для Excel предлагает специальную панель Поиск и замена, которая значительно упрощает и упорядочивает этот процесс. Это особенно удобно для быстрого просмотра ваших книг — никаких скриптов или сложной настройки! Идеальное решение для пользователей, которые часто работают с несколькими файлами одновременно и ценят простой, понятный инструмент для эффективного поиска.
1. В любой открытой книге перейдите на вкладку Kutools и выберите Navigation. Затем нажмите кнопку Поиск и замена
, чтобы открыть панель Поиск и замена, обычно расположенную слева в окне Excel. См. снимок экрана:

2. На вкладке Find введите искомое значение в поле Find what. В выпадающем списке Within выберите пункт All workbooks, чтобы выполнить поиск по всем открытым книгам. Затем нажмите кнопку Find All, чтобы мгновенно получить список всех совпадающих ячеек с указанием их расположения. См. снимок экрана:
Совет: Расширенная утилита Kutools для Excel «Поиск и замена» позволяет искать и заменять данные не только во всех открытых книгах, но и целенаправленно — например, только в Выбранных листах, Текущей книге, Текущем листе или даже исключительно в вашем Текущем выделенииЭто обеспечивает гибкий контроль, адаптированный под ваши задачи.
Меры предосторожности: Убедитесь, что все книги, по которым вы хотите выполнить поиск, открыты до начала операции — этот инструмент не может искать в файлах, которые в данный момент не открыты в Excel.
Устранение неполадок: Если некоторые файлы не отображаются в результатах поиска, убедитесь, что они полностью загружены в Excel и не находятся в защищённом режиме или режиме «только для чтения», так как это может ограничивать доступ к поиску.
Демонстрация: Значение для поиска по нескольким открытым книгам с помощью Kutools для Excel
Поиск значения по нескольким листам с использованием формул Excel
Если в вашей книге есть несколько известных имен листов и вам нужно проверить, существует ли определенное значение на этих листах и где именно оно находится, вы можете использовать формулы Excel для динамического поиска по ним. Такой подход особенно подходит, когда вы хотите автоматически обновлять результаты поиска, а список листов остается относительно неизменным или управляется в отдельной таблице.
Этот метод требует, чтобы вы заранее знали или указали имена всех листов для поиска. Он наиболее эффективен при автоматической проверке, создании панелей мониторинга или всякий раз, когда вы хотите построить сводную ссылку без выполнения полного сканирования каждый раз.
Преимущества: Результаты автоматически обновляются при изменении данных — никаких скриптов или надстроек не требуется, всё обрабатывается прямо внутри книги.
Недостатки: Не подходит для случаев, когда имена листов часто меняются, или если у вас очень большое количество листов.
Пример сценария: Допустим, у вас есть три листа с именами Лист1, Лист2 и Лист3. Вы хотите узнать, на каком(их) листе(ах) определённое значение — например, «Invoice123» — встречается в ячейке A1 или просто проверить, присутствует ли оно где-либо на этих листах.
Шаг 1. Предположим, у вас есть список имен листов в диапазоне D2:D4 (D2: Лист1, D3: Лист2, D4: Лист3). Введите значение для поиска (например, «Invoice123») в ячейку E1. Затем в ячейку F2 введите следующую формулу:
=IF(COUNTIF(INDIRECT("'"&,D2&,"'!A:A"), $E$1) >,0, "Found", "Not Found") Шаг 2. Протяните формулу из ячейки F2 до F4, чтобы проверить все листы, перечисленные в диапазоне D2:D4. Вы сразу увидите результат — «Найдено» или «Не найдено» — для каждого листа.
Как это работает: Формула использует функцию ДВССЫЛ (INDIRECT) для создания ссылки на каждый указанный лист и функцию СЧЁТЕСЛИ (COUNTIF), чтобы проверить, содержится ли значение из ячейки E1 в столбце A каждого листа. При необходимости измените диапазон A:Aна другой столбец или конкретный диапазон (например,)A1:Z100).
Дополнительный совет:Чтобы получить имена листов, содержащих это значение, используйте следующую формульную конструкцию массива (вводится с помощью Ctrl + Shift + Enter в более старых версиях Excel или как обычная формула в Microsoft 365/Excel 2021+):
=TEXTJOIN(", ",TRUE,IF(COUNTIF(INDIRECT("'"&,D2:D4&,"'!A:A"), $E$1)>,0, D2:D4, "")) Эта формула возвращает список имен листов, разделённых запятыми, на которых найдено значение. Имейте в виду: функция ДВССЫЛ (INDIRECT) работает только с открытыми книгами и не поддерживает поиск в закрытых файлах.
Меры предосторожности: Если имена листов изменены или удалены, формула вернёт ошибку #ССЫЛ! Всегда проверяйте правильность имени листа «Список имён». В крупных книгах формулы на основе ДВССЫЛ могут замедлить производительность.
Устранение неполадок: Если возникают ошибки, убедитесь, что все указанные листы существуют и что диапазон поиска задан правильно. Для динамических списков листов рекомендуем использовать именованные диапазоны или проверку данных (Data Validation), чтобы список листов автоматически оставался актуальным.
Связанные статьи:
- Как быстро Поиск и замена по нескольким листам или всей книге?
- Как быстро Поиск и замена в нескольких открытых Файлы Excel?
- How to find largest negative value (less than0) в Excel?
- Как извлечь все дубликаты из столбца в Excel?
Лучшие инструменты повышения продуктивности в Office
Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…
Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу
- Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
- Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
- Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!
Все надстройки Kutools — один установщик
Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.
- Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
- Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
- Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
- 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
- Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек
