Excel поиск по всем листам книги

Поиск в программе Microsoft Excel

Поиск в Microsoft Excel

​Смотрите также​Dim iFirstAddress As​ на регистр не​ find — это​ примитивная фильтрация, но​ установлено On Error​ Dim col As​ помощи.​ 2) = iRng.Address(0,​Dim iFoundSht As​ и без формы…​ то должно возвращаться​ нет​Есть несколько таблиц​Откроется окно, в​ выше, поиск ведется​ этого курсор перейдет​

​В документах Microsoft Excel,​ String, iSecondAddress As​

Поисковая функция в Excel

​ смотрел при сравнении​ довольно длинный процесс.​ жутко неудобно, особенно​ Resume Next -​ Object, arr, el​В файлике описана​ 0)​ Worksheet​shurun999​

Способ 1: простой поиск

​ #Н/Д​dendy_81​ товаров разных поставщиков​ правом верхнем углу​ по порядку построчно.​ на ту ячейку​ которые состоят из​ String​ по Like.​

  1. ​ Тут прозвучало предложение​​ когда ищешь по​​ т.е. продолжить работу​​ arr = Split(«D​​ проблемма.​iLastRow = iLastRow​Dim FirstAddress As​​: какой фаил?​​В самый конец​: класс! формула сокращена​​ с одинаковыми полями,​​ которого, есть строка​ Переставив переключатель в​ Excel, по записи​ большого количества полей,​​Dim iFoundRng As​​Lubaxa​

    Переход к поиску в Microsoft Excel

  2. ​ по массиву… Но,​ всем страницам и​ процедуры, но в​ E G H​davaispoem​ + 1​​ String​​shurun999​​ вставить:​​ до минимума! Спасибо​ расположенных на разных​​ поиска. В этой​​ позицию​ которой пользователь сделал​ часто требуется найти​ Range​: Спасибо огромное HUGO121!!!​​ если честно, я​​ по нескольким критериям…​​ коллекцию ничего не​​ J K M​

    Обычный поиск в Microsoft Excel

  3. ​: в другом формате​​Set iRng =​​Dim TextToFind As​: вот фаил​If rFndRng Is​ вам за помощь​ листах.​

    ​ строке пишем поисковую​«По столбцам»​ щелчок.​ определенные данные, наименование​If Len(ComboBox2.Value) =​ были другие дела,​ с ними вообще​ Надо сделать общий​ добавляется), которая и​ N») On Error​sva​

    ​ .FindNext(iRng)​ Variant​AntikBantik​ Nothing Then VLookUpAllSheets​ (и Alexander_V тоже).​Вид: Артикул/Наименование/Цена и​ фразу, слова. Мы​, можно задать порядок​Если у вас довольно​ строки, и т.д.​ 1 Then MyLeight​ поэтому добралась разбираться​ дела не имела​ поиск по БД.​ отлавливается Err, по​ Resume Next For​: Формула для плана​Loop While iRng.Address​Dim iLastRow As​:​

    ​ = «#N/A»​ Вставил в свою​ т.д.​​ написали «посчитать стаж».​​ формирования результатов выдачи,​

    Результат обычного поиска в Microsoft Excel

    ​ масштабная таблица, то​ Очень неудобно, когда​ = 8​ со всем только​ и тем более​

  4. ​ Я, если честно​ этому признаку и​ i = 9​=ИНДЕКС(ДВССЫЛ(«‘»&C11&»‘»&»!$C$7:$C$10″);ПОИСКПОЗ(Факт!B11;работы;0))​​ <> FirstAddress​​ Long​shurun999​End Function​ базу — работает!​Требуется составить заказ​ Во время ввода​ начиная с первого​ в таком случае​ приходится просматривать огромное​If Len(ComboBox2.Value) =​ в эти выходные…​ смутно представляю, как​ с Visual Basic​ определяется повторение значения​ To 57 Step​sva​Else​Dim iShtName As​, нужно вытащить данные​или в начало​ Только вот функция​ на отдельном листе.​ поисковой фразы сразу​ столбца.​

Найти всё в Microsoft Excel

Способ 2: поиск по указанному интервалу ячеек

​ не всегда удобно​ количество строк, чтобы​ 2 Then MyLeight​ Вчера отредактировала, запустила​ можно записать поиск​ на «Вы» -​ ячейки.​ 2 Set col​: Формула для остатка​MsgBox «Значение «​ String​ со всех листов​Dim rFndRng As​ ищет неполное совпадение​

  1. ​ Чтобы при вводе​ идет поиск.​В графе​

    Выделение интервала в Microsoft Excel

  2. ​ производить поиск по​ найти нужное слово​​ = 9​​ — все о.к.​ с помощью массива….​ составляла только небольшие​​na4ik​​ = New Collection​ (массивная, вводить Ctrl+Shift+Enter)​ & TextForFind &​Set iFoundSht =​ которые есть в​ Range​ по одному или​ номера в поле​

Поиск по интервалу в Microsoft Excel

Способ 3: Расширенный поиск

​Получился такой результат.​«Область поиска»​ всему листу, ведь​ или выражение. Сэкономить​Application.ScreenUpdating = False​ работает!!!! Еще раз​Hugo121​ расчетные программки. Перерыла​: Точно угадали и​

​ For Each sh​=E11-СУММ(ЕСЛИ((C11=$C$11:C11);ЕСЛИ((B11=$B$11:B11);$D$11:D11)))​ » не найдено!»,​ Sheets(«Поиск») ‘лист «Поиск»​ файле?​VLookUpAllSheets = «#N/A»​ нескольким символам, и​ «Артикул» осуществлялся поиск​Нажимаем на нужный документ,​определяется, среди каких​ в поисковой выдаче​ время и нервы​ ‘обновление экрана wykl​ спасибо!!!​: Ну цикл по​ весь интернет и​ объяснили.​ In Worksheets For​davaispoem​ 48, «Ошибка»​ присваиваем переменной​shurun999​А уже юзер​ отображает первое найденное​ данных по всем​ он откроется.​ конкретно элементов производится​ может оказаться огромное​ поможет встроенный поиск​With Columns(1)​

Результат поиска в Microsoft Excel

​Была мысль сделать​ массиву не сложный:​ даже не могу​Только добавлю -​ Each el In​: Роман, здравствуйте! Ваша​

  1. ​End If​​iFoundSht.Range(«A5:AA5000»).Clear ‘очищаем диапазон​​: нужно при вводе​ проверять должен на​​ значение (ввёл «22»,​​ листам, и занесение​

    Переход в параметры поиска в Microsoft Excel

  2. ​Внимание!​ поиск. По умолчанию,​ количество результатов, которые​ Microsoft Excel. Давайте​Set iFoundRng =​ также поиск по​Sub tt() Dim​ понять, с чего​ если добавлять​

    Параметры поиска по умолчанию в Microsoft Excel

    ​ arr t =​​ формула для плана​​End With​​ ячеек на листе​​ номера телефона открывалась​ ЕНД() или еслиошибка()​ а нашла «220156»).​ найденного в остальных​Чем точнее укажем​ это формулы, то​ в конкретном случае​ разберемся, как он​ .Find(ComboBox2.Value & «*»​ 2 критериям, но​ a(), i&, s$​ начинать, какие функции​col.Add t​ sh.Range(el & i).Value​ работает замечательно, спасибо,​Next​ Поиск​ вся о нем​ и подставлять что​​ А мне надо​​ поля.​ место хранения документа,​ есть те данные,​ не нужны. Существует​ работает, и как​ & Right(ComboBox1.Value, 2))​ думаю, что это​ a = Sheets(«2006»).[a1].CurrentRegion.Value​ использовать и т.д.​то в коллекцию​

    Настройки поиска в Microsoft Excel

    ​ If Len(t) Then​ все у меня​End Sub​’TextToFind = Application.InputBox(«Введите​​ информация, а поиск​​ ему нравится -​ найти значение по​​Можно ли это​​ тем быстрее произойдет​ которые при клике​ способ ограничить поисковое​

    Область поиска в Microsoft Excel

    ​ им пользоваться.​​If Not iFoundRng​​ не понадобится. Удачи!​ For i =​ Подскажите, пожалуйста…​ добавятся все кого​ col.Add t, t​ получилось, а вот​по вашим словам​​ строку для поиска»​​ происходил по всем​ пробел, пустую строку,​ всем символам, по​ сделать с помощью​

    Содержимое поиска в Microsoft Excel

    ​ поиск документа.​​ по ячейке отображаются​​ пространство только определенным​Скачать последнюю версию​ Is Nothing Then​Medvedoc​ 1 To UBound(a)​Идея такова: БД​ положим, без отбора​ If Err Then​ в формуле по​ я могу оставить​ & Chr(13) &​ листам​ 0 и т.п.​ количеству и по​ функции ВПР()? Если​Например, мы указали​ в строке формул.​ диапазоном ячеек.​ Excel​iFirstAddress = iFoundRng.Address​: Здравствуйте форумчане! =)​ If a(i, 4)​ в Excel на​ уникальных.​ MsgBox sh.Name &​​ остатку заложены два​​ только последнюю часть​​ Chr(13) & «Например:​​раньше сам делал​dendy_81​ их порядковому расположению​ можно, то как​ такой путь –​​ Это может быть​​Выделяем область ячеек, в​

    Область поиска в программе Microsoft Excel

    ​Поисковая функция в программе​Do​ Как сделать поиск​​ = Sheets(1).[a1].Value Then​​ ~ 10 листах​

    Переход к формату поиска в Microsoft Excel

    ​Т.е. объект Collection​ «-» & el​ условия, выбор по​ данного кода?​ Lexus или Lexus​ поиск, но давно​: Извиняюсь, что долго​ (по артикулу). Т.е.,​ задать диапазон листов?​ «Этот компьютер» -​ слово, число или​ которой хотим произвести​ Microsoft Excel предлагает​

    Формат поиска в Microsoft Excel

    ​If Len(iFoundRng.Value) =​ по листам всей​ s = a(i,​ по годам (много​ таки может содержать​​ & i &​​ адресу и выбор​

    Переход к выбору ячейки для установки формата в Microsoft Excel

    ​Юрий М​ 350″, «Поиск», «Lexus​ это было, не​ не появлялся (нэта​ если я ввел​Или же нужно​

    Выбор ячейки для установки формата в Microsoft Excel

    ​ «Документы» (мы помним,​ ссылка на ячейку.​ поиск.​​ возможность найти нужные​​ MyLeight Then​

    Установка формата поиска в Microsoft Excel

    ​ книги? Чтобы на​ 1) & «|»​ колонок). Скажем какая-то​ одинаковые элементы​ «-» & t:​ по названию работы,​: «Убрал» жёлтую ячейку,​ 350″)​ помню уже.​ не было).​ «200543», то и​ писать макрос для​ что документ находится​ При этом, программа,​Набираем на клавиатуре комбинацию​ текстовые или числовые​ListBox1.AddItem iFoundRng &​ титульном листе была​

    Поиск по отдельным словам в Microsoft Excel

  3. ​ & a(i, 2)​ форма на первом​Hugo121​​ Err.Clear Next Next​​ если одно из​​ удалил кнопку, данные​​TextToFind = iFoundSht.Range(«B2»)​Hugo121​

Запуск расширенного поиска в Microsoft Excel

​Спасибо всем участникам​ найти должна только​ поиска по всем​ в папке «Документы»)​ выполняя поиск, видит​ клавиш​ значения через окно​ «|» & iFoundRng.Offset(0,​ ячейка для ввода​ & «|» &​ листе, где вводятся​: Даже если занесены​ Next End Sub​ них совпадает, то​ выводятся в одну​If TextToFind =​: куда?​ за полезную информацию!​

​ значение «200543». Что​

lumpics.ru

Поиск документа Excel по содержимому текста.

​ листам книги?​​ – «Excel» (в​ ​ только ссылку, а​​Ctrl+F​​ «Найти и заменить».​​ 1).Value​ слова для поиска​ a(i, 3) &​
​ поисковые критерии. И​
​ одинаковые значения то​ ​Внимание! Код чуть​
​ формула берет значение​ ячейку.​ «» Or TextToFind​где?​ Особенно The_Prist за​ надо поменять в​Serge​ папке «Документы» есть​ не результат. Об​
​, после чего запуститься​ Кроме того, в​End If​ и кнопка «поиск».​ «|» & a(i,​ на этом же​ ключи будут разные….​ изменил — и​ в сумму, но​Medvedoc​
​ = False Then​​А если ранее​ полную и содержательную​
​ функции? И как​
​: Можно.​ две папки «Word»​ этом эффекте велась​ знакомое нам уже​
​ приложении имеется возможность​Set iFoundRng =​ Поиск слова должен​ 4) MsgBox s​ листе выводятся​Вот например -​ сразу нашёл одну​ там нужно сделать​: спасибо большое! =)​ Exit Sub ‘если​ уже делали поиск​ функцию, а Лузеру​ в функции, если​Alexander_V​
​ и «Excel». Мы​ речь выше. Для​ окно​ расширенного поиска данных.​ .Columns(1).FindNext(iFoundRng)​ происходить по всем​
​ Sheets(1).[B1].Value = s​
​все​ ​ сколько будет единиц​ накладку: 4 курс-M51-проф.​​ так чтобы совпадало​
​ я немного подправил​ ничего не ввели​ — то ведь​ за её доработку​ при поиске не​: Вот ссылка​ помним, что документ,​ того, чтобы производить​
​«Найти и заменить»​ ​Простой поиск данных в​
​iSecondAddress = iFoundRng.Address​ листам книги и​ ​ End If Next​
​найденные результаты (строки​ в коллекции и​ Оніпко В.В.​ одновременно два условия​ ваш макрос под​ — Выход!​ нет проблем открыть​ и «#N/A».​
​ найдено совпадений, оставить​(топик третий снизу)​ который мы ищем,​ поиск именно по​. Дальнейшие действия точно​ программе Excel позволяет​Loop While iSecondAddress​ выводить полученные результаты​ End SubВ А1​ по всем колонкам)​ где будет ошибка?​Hugo121​​ (адрес и работа),​ свой шаблон, чтобы​TextToFind = Trim(TextToFind)​ справку и освежить​После этой темы​ строки пустыми или​Guest​ находится в конкретной​ результатам, по тем​ такие же, что​ ​ найти все ячейки,​
​ <> iFirstAddress​ в определенное поле​ первого листа пишите​ в виде таблицы.​Sub tt() Dim​: Огромное спасибо, вы​ а то суммирует​ вместо адреса ячейки​ ‘убираем начальные и​ знания? Там всё​ у меня появился​ заполнить пунктирами (вместо​: Посмотрел я файл​ папке «Excel»).​ данным, которые отображаются​ и при предыдущем​ в которых содержится​Else: MsgBox «Нет​ или в виде​
​ имяфамилию, выполняете код.​ Поиск надо составить​ col As New​ очень помогли…буду теперь​ все подряд…​ выводилось содержимое самой​
​ конечные пробелы​ предельно ясно, и​ интерес к изучению​ нулей)?​ с примером функции.​Если документ находится​ в ячейке, а​ способе. Единственное отличие​ введенный в поисковое​ данных»​ гипрессылки переходить на​Т.к. может быть​ по 4-5 критериям​ Collection On Error​ разбираться з кодом​
​помогите пожалуйста поправить…​ ячейки =)​Application.ScreenUpdating = False​ пример кода есть.​ VBA. Буду мыслить!​ytk5kyky​ Получается, в ней​ на флэшке, то​ не в строке​ будет состоять в​ окно набор символов​End If​ требуемую страницу.​ несколько совпадений -​ (или колонкам).​ Resume Next col.Add​А подскажите еще​

excel-office.ru

Поиск данных по всем листам.

​na4ik​​Medvedoc​ ‘отключаем обновление экрана​
​shurun999​Kilrex​: Может тогда поменять​ нужно описывать каждый​ указываем (выделяем) флэшку.​
​ формул, нужно переставить​ том, что поиск​
​ (буквы, цифры, слова,​End With​Windows 7​ цикл гоним до​сложность еще заключается​ 1, «1» col.Add​ пожалуйста, какую строку​: В VB почти​: а как сделать,​
​For Each iSheet​: это было лет​: А что еще​ местами порядок vCriteria​ лист, где надо​
​ Сначала, естественно, вставим​ переключатель из позиции​ выполняется только в​ и т.д.) без​

​Application.ScreenUpdating = True​​: Развлекайтесь. (см. файл)​

​ конца.​​ в том, что​

​ 1 col.Add 1,​

​ и куда прописать,​​ нечего не шарю…говорю​ чтобы результаты поиска​ In ThisWorkbook.Worksheets ‘поиск​ 10 назад.​ нужно прописать в​ и rTable? И​
​ искать. (=VlookupNumberX($B12;E$9;0;Таблица1!$A$1:$E$15;Таблица2!$A$1:$E$15;Таблица3!$A$1:$E$15))​ флэшку в ноутбук.​«Формулы»​ указанном интервале ячеек.​ учета регистра.​
​ ‘обновление экрана wkl​kovax​В Вашем случае​ в некоторых местах​
​ «1» On Error​ что бы эти​ сразу)​ выводились в одной​ по листам​в окно поиска,а​ коде функции VLookUpAllSheets​

​ еще добавить псевдо​​А это очень​ : )​в позицию​Как уже говорилось выше,​Находясь во вкладке​End Sub​
​: всё здорово, но​ могут быть трудности​ БД одному названию​ GoTo 0 col.Add​ ячейки выделилась еще​
​Проблема: нужно сделать​ ячейке, а не​If iSheet.Name <>​ в соседнем окне​
​ чтобы она показывала​ «интервальный просмотр», который​ длинная формула (у​Второй вариант.​«Значения»​ при обычном поиске​«Главная»​
​Юрий М​ вот если на​ с диакритическими знаками​ (или накладной) принадлежит​ 1 col.Add 1,​ например жёлтым цветом?​ поиск ячейки в​ в двух?​ iFoundSht.Name Then​ выводился результат.​
​ сумму трех значений​ будет менять xlWhole/xlPart?​ меня около 15-ти​Поиск книги​. Кроме того, существует​
​ в результаты выдачи​, кликаем по кнопке​

​: Medvedoc, Вы уже​​ листе искомое слово​

​ — их видно​​ несколько строк…. То​ «1» End SubСкажу​na4ik​
​ определенном диапазоне на​
​Юрий М​If iSheet.FilterMode =​Hugo121​ в строке идущих​ytk5kyky​ листов с прайсами​
​Excel по тексту в​ возможность поиска по​

​ попадают абсолютно все​​«Найти и выделить»​ СТОЛЬКО написали, а​ встречается несколько раз,​ только на листе,​ ли можно как-то​ по секрету -​

​: sh.Range(el & i)​​ ВСЕХ листах.​: Какой смысл выводить​ True Then iSheet.ShowAllData​
​: Так и делайте​
​ за искомым значением?​: Я устыдился давать​ товаров).​ ней​ примечаниям. В этом​ ячейки, содержащие последовательный​
​, которая расположена на​ никто ещё не​

​ то выводится ссылка​
​ ну или на​
​ их вписать в​
​ 3, но ошибки​ видишь? Вот её​если можно, укажите​

​ значение, если Вы​​ ‘если на листе​ — там в​В документе 46 листов,​

​ ТЗ и сделал​​Мне надо, наподобие​.​ случае, переключатель переставляем​ набор поисковых символов​

​ ленте в блоке​​ видел Вашего файла.​ всего лишь на​
​ форму можно вывести,​ поиск, то ли​

​ не избежать в​​ и крась. Как​ некоторые комментарии.​ ИМЕННОГО его задали​ установлен автофильтр, то​ опциях можно задать​ и по 5​ сам, чуть иначе.​ функции ВПР(), но​Нам нужно найти​ в позицию​ в любом виде​ инструментов​Medvedoc​ первое встреченное совпадение,​ установив нужный фонт.​ придется все-таки присваивать​ 9 строке!​ — запиши рекордером.​p.s. Вся задача​ в поиске? :-)​ снимаем его​ поиск по всей​ страниц на каждом,​Function VLookUpAllSheets(vCriteria As​ только поиск осуществлять​ книгу Excel, в​«Примечания»​ не зависимо от​«Редактирование»​: так файлик прикреплен​ а как быть​

​Lubaxa​​ каждой название….​Hugo121​Вот так например​ заключается в том​ Впрочем, Вам виднее…​Set iFoundRng =​

​ книге, показывать все.​​ есть ли возможность​ Variant, rTable As​ по всем листам.​

​ которой есть слово​.​ регистра.​. В появившемся меню​ в самом верху​ с остальными?​
​: Спасибо. Буду разбираться….​Помогите, пожалуйста, а​, извините что снова​ — и проорёт,​
​ что бы, создать​Юрий М​ iSheet.Cells.Find(TextToFind, , xlFormulas,​Правда не все​
​ искат ьво всей​ Range, lColNum As​В примере (прикрепленный​ «январь». Пишем это​Ещё более точно поиск​К тому же, в​ выбираем пункт​
​ =) там windows​kovax​А со знаками​ то даже не​ беспокою, но не​ и напишет, и​
​ макрос который проверяет​: Вы мой последний​
​ xlPart)​ связанные данные увидите…​
​ книеге одновременно, а​ Long, Optional XlLookAt​
​ файл), поиск происходит​
​ слово в строке​ можно задать, нажав​ выдачу может попасть​«Найти…»​
​ 7 выложил готовое​: а ещё круто​
​ особых проблем нет.​ представляю с чего​
​ могли бы подсказать​
​ покрасит:​
​ не попадает ли​
​ файл открывали?​
​If Not iFoundRng​
​shurun999​

​ не на каждм​ As String =​

​ по полю «Артикул»​​ поиска (смотрите первый​ на кнопку​ не только содержимое​. Вместо этих действий​ решение, но это​ было бы сделать​ Они нормально воспринимаются,​ начинать и что​ как еще сделать​Dim sh As​ один и тот​Medvedoc​ Is Nothing Then​: как?​ листе отдельно? Ато​ «xlWhole») As Variant​ для таблицы «Прайс»,​ вариант, который мы​«Формат»​ конкретной ячейки, но​ можно просто набрать​ решение выводит в​ возможным поиск по​ если установить правильно​ использовать….​ такую же проверку,​ Worksheet Dim col​ же преподаватель в​: конечно открывал =)​ ‘если нашли​если помнил не​
​ 46 раз просить​’rTable — указывается​ а данные отображаются​ рассмотрели выше).​

​.​​ и адрес элемента,​ на клавиатуре сочетание​ результатах поиска по​ части слова​ язык. На крайний​
​Спасибо.​ ток по аудиториям?​ As Object, arr,​
​ несколько групп на​ мне понравился.​FirstAddress = iFoundRng.Address​ спрашивал бы тут​ его найти одно​

​ таблица для поиска​​ в полях «Наименов»,»кол-во»​Получится такой результат.​При этом открывается окно​ на который она​
​ клавиш​ одному значению с​
​к примеру в​ случай — поправка​образец приложен.​
​пробовал сделать по​
​ el arr =​
​ факультете на одной​Я имел в​
​ ‘запоминаем адрес найденной​

​shurun999​ и тоже както​ значений(как в стандартной​ и «цена».​Третий вариант.​ формата ячеек. Тут​ ссылается. Например, в​

​Ctrl+F​​ каждого листа при​ ячейке написано Вася​ фонтом.​
​Watcher_1​ тому же принципу​ Split(«D E G​ и той же​ виду, что у​ ячейки, чтобы продолжить​: ни кто не​
​ тяжко.​ ВПР)​Alexander_V​Как найти нужный документ​

​ можно установить формат​​ ячейке E2 содержится​.​ наличии на каждом​ Пупкин​Hugo121​: Думаю тут однозначно​ что и проверка​

planetaexcel.ru

Как искать слово в книге excel?

​ H J K​ паре.​ вас текст найдено​ поиск по листу​ поможет с моим​Валерий беляев​’vCriteria — указывается​: Посмотрел я файл​ из открытого документа​ ячеек, которые будут​ формула, которая представляет​После того, как вы​

​ из этих листов​​при вводе в​: Как вариант -​ нужно для каждой​
​ преподавателей, ток задал​
​ M N») On​
​Заранее спасибо​ располагается в столбце​
​Do​ вопросом?​
​: Pasha Ram -​
​ ссылка на ячейку​
​ с примером функции.​Excel.​ участвовать в поиске.​ собой сумму ячеек​

​ перешли по соответствующим​​ по несколько одинаковых​ ячейку пупк находилась​1. сперва обязательно​ строки название!​

Поиск по именам вкладок в Excel?

​ другой массив:​ Error Resume Next​Кой что попытался​ А, а текст​With iFoundSht​Hugo121​

​ ты сам то​​ или текстовое значение​ Получается, в ней​В открытом документе​ Можно устанавливать ограничения​ A4 и C3.​ пунктам на ленте,​ значений =) например​ ячейка содержащая эти​ что-то пишите в​После этого уже​arr = Split(«F​ For i =​ набросать…но ток по​ ячейка в столбце​
​iLastRow = .Cells(.Rows.Count,​: Без формы.​
​ пробовал?​
​ для поиска​
​ нужно описывать каждый​ Excel переходим на​ по числовому формату,​
​ Эта сумма равна​
​ или нажали комбинацию​ на листе имеется​
​ буквы, т.е. ячецка​ пустые J1 шапок​
​ легче будет консолидировать​ I L O​
​ 9 To 57​
​ 1 листу работает(​
​ В. Вот я​
​ 1).End(xlUp).Row ‘определяем последнюю​
​Medvedoc​Ответ:​’lColNum — указывается​ лист, где надо​
​ закладку «Файл» (в​
​ по выравниванию, шрифту,​

Поиск по нескольким листам в одной книге

​ 10, и именно​​ «горячих клавиш», откроется​ два значения в​ с Васей Пупкиным​ обоих листов!​ данные из нескольких​ R») ………….. For​ Step 2 Set​Sub search_main() Dim​ и говорю что​ заполненную строку на​: Как сделать так,​Нажимаешь Ctrl+F​ номер столбца в​

​ искать. (=VlookupNumberX($B12;E$9;0;Таблица1!$A$1:$E$15;Таблица2!$A$1:$E$15;Таблица3!$A$1:$E$15))​​ Excel 2013) или​ границе, заливке и​ это число отображается​ окно​ виде цифры 5,​Medvedoc​2. копируете шапку​ таблиц в одну​ i = 8​

​ col = New​​ rng As Range​ результат поиска выводится​ листе поиск​

​ чтобы по заданному​​В открывшемся окне​

​ таблице rTable, значение​​А это очень​

​ нажимаем на кнопку​​ защите, по одному​​ в ячейке E2.​​«Найти и заменить»​ при поиске результат​: я согласен с​ с любого листа​

​ по нескольким критериям​​ To 56 Step​ Collection For Each​ ‘ область Dim​ в двух ячейках.​If iLastRow =​ в поисковике значению​
​ нажимаешь «Параметры»​ из которого необходимо​ длинная формула (у​ «Office» в левом​

​ из этих параметров,​​ Но, если мы​
​во вкладке​
​ покажет с этого​ kovax =) если​ на первый лист.​Hugo121​ 2но почему выводит​ sh In Worksheets​ name1 With Worksheets(«1​ А как сделать​

​ 1 Then iLastRow​​ находились все результаты​В открывшихся окошечках​
​ вернуть — может​ меня около 15-ти​ верхнем углу (в​

​ или комбинируя их​​ зададим в поиске​«Найти»​ листа только первое​ слово встретиться два​ Это как понимаете​
​: Думаю можно сделать​ слишком много лишних​

​ For Each el​​ курс») Set rng​
​ так, чтобы он​ = 4 ‘если​

​ на всех листах.​​ выбираешь «В книге»​ быть ссылкой на​ листов с прайсами​

​ Excel 2007).​​ вместе.​

CyberForum.ru

как сделать поиск по всем листам книги?

​ цифру «4», то​​. Она нам и​ значение =)​ раза, то поисковик​ работа разовая.​ так -​ значений…возможно это из​ In arr t​ = .Range(«D12:X11») name1​ был только в​ лист пуст, то​ Приложенный файлик содержит​Вводишь что искать​ столбец — СТОЛБЕЦ()​ товаров).​В появившемся диалоговом​Если вы хотите использовать​ среди результатов выдачи​ нужна. В поле​я нашел другой​ выведет только первое​3. под шапкой​1. заполняете свои​ того что ячейки​ = sh.Range(el &​ = Range(«D11»).Value For​ одной ячейке? Например​ вставлять будем начиная​ макрос, который выводит​Нажимаешь «Найти все»​

​’XlLookAt — Optional.​​Мне надо, наподобие​

​ окне нажимаем на​​ формат какой-то конкретной​

​ будет все та​​«Найти»​ макрос поисковика, где​ найденое значение на​
​ (2 строка) пишите​ 4-5 критериев (можно​ соединенны =​ i).Value If Len(t)​ Each cell In​ в ячейке G?​ с 7-й строки​ результат поиска только​ЗЫ: Это в​ Can be one​ функции ВПР(), но​ функцию «Открыть». Появится​ ячейки, то в​ же ячейка E2.​вводим слово, символы,​
​ отчасти реализовано то,​ странице =) а​ что угодно в​ в любом порядке,​p.s. как можно​ Then col.Add t,​ rng If cell​

​Юрий М​​If iShtName <>​ первого значения листа​ 2007, другого нет​ of the following​ только поиск осуществлять​

​ список последних книг​​ нижней части окна​ Как такое могло​ или выражения, по​ что надо. Но​ как быть с​ соотв. ячейки -​ любые, можно не​ сделать что бы​ t If Err​ = name1 Then​: Вы про какой​ iSheet.Name Then ‘если​

​ и так со​​ — проверить не​ XlLookAt constants: xlWhole​ по всем листам.​

​ Excel, с которыми​

​ нажмите на кнопку​
​ получиться? Просто в​ которым собираемся производить​
​ надо оттуда приспособить​ остальными?​
​ будут отобраны данные​ все), жмёте кнопку.​
​ в сообщение выводило​ Then MsgBox sh.Name​
​ MsgBox («Ошибка») cell.Interior.Color​ файл говорите? Ща​
​ новый прайс-лист​ всей книги. Например,​
​ могу​ or xlPart. Default​

​В примере (прикрепленный​ мы работали. Ищем​«Использовать формат этой ячейки…»​
​ ячейке E2 в​ поиск. Жмем на​ код к макросу​
​А так поисковик​ строк с полным​2. код берёт​ и первый входящий​ & «-» &​ = RGB(255, 255,​ точно забаню!​
​With .Cells(iLastRow +​
​ ищет цифру 5.​Majya penzeva​ — «xlWhole»​ файл), поиск происходит​ среди них. Если​.​
​ качестве формулы содержится​ кнопку​ Windows 7, ЧТОБЫ​
​ в принципе нормально​ совпадением по этим​
​ первый критерий, через​ элемент, при совпадении?По​ el & i​
​ 0) End If​Medvedoc​
​ 1, 1) ‘проставляем​ Но если на​: Нажмите Ctrl+F в​Dim rFndRng As​ по полю «Артикул»​
​ документ давно не​После этого, появляется инструмент​ адрес на ячейку​
​«Найти далее»​ ПОЛУЧИЛОСЬ 100% ЗАДУМАННОЕ​ работает =)​
​ полям.​ find ищет его​ аудиториям много повторов:​ & «-» &​
​ Next cell End​
​: ВАМ БЫ ЛИШЬ​
​ имя листа​ листе таких цифр​ всплывшем окне внесите​ Range​
​ для таблицы «Прайс»,​ открывали и его​ в виде пипетки.​ A4, который как​, или на кнопку​ =)​
​Guest​Выполняете код (можно​ на первом листе.​
​1 курс-L14-каф​ t Debug.Print sh.Name​ With End Sub​
​ ЗАБАНИТЬ =) у​.Value = «Лист:​ 5 примерно штук​ нужное слово и​For i =​
​ а данные отображаются​
​ нет в списке,​ С помощью него​ раз включает в​
​«Найти всё»​Прикрепил во вложение​: А Вы и​ на первый лист​ Если нашёл, ищет​
​1 курс-R14-каф​ & «-» &​
​Watcher_1​
​ меня просто уже​
​ » & iSheet.Name​ 10, то поисковик​ выбирите найти все.​
​ 1 To Worksheets.Count​ в полях «Наименов»,»кол-во»​
​ то нажимаем на​
​ можно выделить ту​ себя искомую цифру​.​ файлик поисковика, нарытого​
​ не просили такой​ в шапке поместить​
​ в этой же​
​4 курс-I14-25​
​ el & i​
​: так?​ голова от этих​
​ & » Ячейка:​ выведет только первую​
​Если в экселе стопиццот​

​If Sheets(i).Name <>​
​ и «цена».{/post}{/quote}​ кнопку «Компьютер».​ ячейку, формат которой​ 4.​При нажатии на кнопку​ на аналогичной теме.​
​ поиск.​ любой рисунок/кнопку, на​
​ строке второй и​2 курс-I24-СК​
​ & «-» &​
​Sub search_main() Dim​ макросов едет. Извините,​ » & iFoundRng.Address(0,​ найденную цифру 5​
​ вкладок с разными​ Application.Caller.Parent.Name Then​
​Не поверите -​Затем, нажимаем на кнопку​ вы собираетесь использовать.​Но, как отсечь такие,​
​«Найти далее»​
​ Мой как вы​

​Medvedoc​ него повесить макрос):​
​ остальные (думаю можно​
​2 курс-L24-СК​ t sh.Range(el &​
​ rng As Range​ не внимательно смотрел.​
​ 0)​
​ этого листа. Как​
​ именами, как можно​With Sheets(i)​
​ у меня тоже​ «Обзор». В появившемся​После того, как формат​
​ и другие заведомо​мы перемещаемся к​
​ выражаетесь файл, выложил​: А Вы и​
​Честно говоря, код​ цикл в цикле​
​2 курс-O24-СК​
​ i).Interior.Color = vbYellow​ ‘ îáëГ*Г±ГІГј Dim​ Сейчас увидел. Спасибо​’добавляем гиперссылку​
​ сделать так, чтобы​
​ найти среди них​
​Set rFndRng =​
​ ровно 15 листов​

​ диалоговом окне в​ поиска настроен, жмем​ неприемлемые результаты выдачи​ первой же ячейке,​

​ Windows 7 и​​ не просили такой​ не вылизывал, может​ перебрать критерии/ячейки)​2 курс-R24-СК​

​ Err.Clear End If​​ name1 For j​ вам огромное за​iFoundSht.Hyperlinks.Add Anchor:=iFoundSht.Cells(iLastRow +​ выводились и остальные​ нужную, не просматривая​ .Range(rTable.Address).Resize(, 1).Find(vCriteria, ,​ с таблицами :),и​

​ строке поиска пишем​​ на кнопку​ поиска? Именно для​ где содержатся введенные​ от него надо​ поиск.{/post}{/quote}​

​ есть ещё какие​​3. если все​1 курс-I30-СК​ Next Next Next​ = 1 To​ помощь! =)​

​ 1, 1), Address:=»»,​​ значения данной страницы,​ все имена?​

​ xlValues, IIf(XlLookAt =​​ формула тоже очень​ поисковую фразу или​
​«OK»​ этих целей существует​ группы символов. Сама​ отталкиваться, поскольку это​Возможно думал о​ блохи. Да и​ нашлись — копирует​1 курс-L30-СК​ End SubТолько изначальную​ Sheets.Count With Sheets(j)​Скажите пожалуйста с​ _​ соответствующие заданному значению​Алексей матевосов (alexm)​ «xlWhole», xlWhole, xlPart))​

​ длинная получилась(кто если​​ слово. Мы написали​.​ расширенный поиск Excel.​

​ ячейка становится активной.​​ оптимальный вариант решения​ таком поиске =)​ ускорить код тоже​ данные.​1 курс-O30-СК​ очистку от покраски​ Set rng =​ чего лучше начать​SubAddress:=»‘» & iSheet.Name​

​ для поиска? То​: Когда стопиццот листов,​If Not rFndRng​

​ не мы формуле​​ «визитка». Появится список​Бывают случаи, когда нужно​После открытия окна​

​Поиск и выдача результатов​​ =)​
​ но не описал​ можно — перевести​4. Через findnext​

​1 курс-R30-СК​ лень писать -​ .Range(«D12:X11») name1 =​

​ изучать создание макросов?​​ & «‘» &​ есть как сделать​

​ то переход от​​ Is Nothing Then​ путь к таблицам​

​ файлов Excel, имеющим​ произвести поиск не​«Найти и заменить»​ производится построчно. Сначала​

​Юрий М​ до конца сути​
​ всё на массивы,​ продолжает поиск на​
​1 курс-L34-каф​
​ да это на​
​ Range(«D11»).Value For Each​
​Юрий М​

​ «!» & iFoundRng.Address,​​ так, чтобы остальные​ одного листа к​VLookUpAllSheets = rFndRng.Offset(,​ напишет), но зато​ в тексте слово​ по конкретному словосочетанию,​любым вышеописанным способом,​

​ обрабатываются все ячейки​​: Правильно — это​

​ =)​​ копирование тоже. Но​

​ этом листе.​​1 курс-R34-каф​

​ практике вероятно и​ cell In rng​: Литература (можно найти​ ScreenTip:=»Перейти на лист​ девять цифр 5​ другому можно сделать​

​ lColNum — 1).Value​​ работает :)​ «визитка».​ а найти ячейки,​ жмем на кнопку​ первой строки. Если​ не Ваш файл,​

​А возможен такой​​ будет непонятнее.​
​5. На этом​

​3 курс-F34-25​​ не нужно.​ If cell =​ в «Копилке») и​
​ » & iSheet.Name​ тоже выводились в​

​ так. Кликнуть правой​​Exit For​

​Попробую сообразить пользовательскую​​Внимание!​
​ в которых находятся​

​«Параметры»​​ данные отвечающие условию​ Вы даже поленились​
​ вариант?​

​Так будет чуть​​ листе больше нет​4 курс-I34-25​Апострофф​ name1 Then MsgBox​ Форум/Форумы.​’.Font.Bold = True​ результатах поиска?​ кнопкой мышки по​End If​ функцию для поиска​Внизу этого окна​ поисковые слова в​.​ найдены не были,​ набросать пример, а​Medvedoc​ быстрее и надёжнее:​ — ищем аналогично​4 курс-I36-25​: Очень помогли, спасибо)​
​ («ГЋГёГ»ГЎГЄГ*») cell.Interior.Color =​

planetaexcel.ru

Поиск по всем листам

​mlm1​​ ‘выделяем жирным​Юрий М​ любой стрелочке листания​
​End With​ по всем листам,​ мы выбрали место​ любом порядке, даже,​
​В окне появляется целый​ программа начинает искать​
​ помощи ждёте. Вот​: А Вы и​Option Explicit Sub​ на следующем.​2 курс-I40-СК​…ток почему то​ RGB(255, 255, 0)​: Добрый день​End With​: Вариант.​ листов, в нижнем​
​End If​
​ но ничего не​ поиска «Все файлы​ если их разделяют​
​ ряд дополнительных инструментов​ во второй строке,​ и сейчас -​ не просили такой​ tt() Dim sh​Если конкретно известно,​2 курс-L40-СК​ закрашивает где нет​ End If Next​результат можно сделать​End If​KuklP​ левом углу. Если​Next i​ обещаю .​

​ Excel». Здесь мы​​ другие слова и​
​ для управления поиском.​ и так далее,​ просите поиск по​ поиск.{/post}{/quote}​ As Worksheet, el,​ что ищем и​2 курс-O40-СК​ ошибки=​ cell End With​ в виде ссылок​’iFoundRng.EntireRow.Copy Destination:=.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row​: EducatedFool выкладывал надстройку.​ листов очень много,​End Function​PS: Я только​ можем выбрать другой​ символы. Тогда данные​

​ По умолчанию все​​ пока не отыщет​ ВСЕЙ книге, а​Возможно думал о​
​ CritArr(), a(), i&,​ где по столбцам​2 курс-R40-СК​…хотелось бы немного​
​ Next End Sub​ на ячейки?​ + 1, 1)​Medvedoc​ то в открывшемся​Справка на англицком,​ учусь.​

​ вид файла. Например,​​ слова нужно выделить​ эти инструменты находятся​ удовлетворительный результат.​ в книге всего​ таком поиске =)​

​ s$, flag As​​ — код может​
​1 курс-L52-СК​ улучшить знание по​na4ik​Интересует вывод всех​
​ ‘копируем всю строку​: Я уж думал​ меню можно выбрать​
​ звиняйте — лень.​dude​ нам нужно найти​
​ с обеих сторон​
​ в состоянии, как​Поисковые символы не обязательно​ один лист. Не​ но не описал​
​ Boolean, n&, ind&,​ быть проще, можно​1 курс-R52-СК​
​ VB в excel…не​: Да, так спасибо)….ток​ совпадающих значений на​

​iShtName = iSheet.Name​​ вы меня забаните​
​ все листы. Результат​Alexander_V​: так?​ текст в Excel’евском​

​ знаком «*». Теперь​​ при обычном поиске,​
​ должны быть самостоятельными​ показали — куда​ до конца сути​ x& CritArr =​ делать не через​4 курс-F52-25​ подскажите какую то​ я немного по​ листе​ ‘запоминаем имя листа​ =)​ увидите.​: класс! формула сокращена​dendy_81​ файле со словами​ в поисковой выдаче​ но при необходимости​ элементами. Так, если​ выводить найденное… Много​ =)​ Application.Trim(Sheets(1).[A2:M2].Value) ind =​ find, а циклом​4 курс-F54-25​ методичку…или лучше скинь​ другом прописал:​Юрий М​End With​
​Ваш вариант тоже​Можно сделать и​ до минимума! Спасибо​: посмотрел ваш файл​ визитка. Тогда мы​

​ будут отображены все​​ можно выполнить корректировку.​ в качестве запроса​ будет желающих делать​
​А возможен такой​ 3 Application.ScreenUpdating =​ по массиву данных.​Sub search_main() Dim​ те при возможности​Код For i​

​: А разве не​​Set iFoundRng =​ прикольный. Но встает​ поиск макросом VBA.​ вам за помощь​
​ — не совсем​ выберем функцию «Все​ ячейки, в которых​По умолчанию, функции​
​ будет задано выражение​ за Вас файл?​ вариант?{/post}{/quote}​ False Sheets(1).UsedRange.Offset(2).Clear For​Watcher_1​ sh As Worksheet​Hugo121​ = 1 To​ все выводятся?​ iSheet.Cells.FindNext(iFoundRng) ‘продолжаем поиск​ вопрос тогда убрать​Код макроса​ (и Alexander_V тоже).​ понятна формула: =ДВССЫЛ(АДРЕС(raw($A5);СТОЛБЕЦ();1;1;lst($A5))).​ файлы». Появится список​ находятся данные слова​«Учитывать регистр»​ «прав», то в​Medvedoc​И желательно убрать​ Each sh In​: Есть более изящное​ Dim col As​: Учебники, справочники, самоучители​ Worksheets.Count Step 1​mlm1​ на том же​ либо ячейки текст​Sub List_Search()​ Вставил в свою​можете расшифровать ее?​ всех разных файлов​ в любом порядке.​и​ выдаче будут представлены​: Хорошо, вот мой​ оттуда кнопку очистить,​ Worksheets If sh.Name​

​ решение через SQL​​ Object, arr, el​
​na4ik​ With Worksheets(i)​: А да выводятся​
​ листе​ для поиска и​strInput = InputBox(«Введите​ базу — работает!​при ее копировании​ со словом «визитка»​

​Как только настройки поиска​​«Ячейки целиком»​

​ все ячейки, которые​​ файл.​ а очищение сделать​ <> «Sheet1» Then​Hugo121​ ‘arr = Split(«D​: Почему это нет?​Как бы теперь​
​ все​Loop While iFoundRng.Address​
​ желтую ячейку с​ имя листа книги»,​ Только вот функция​ и вставке в​ — и текст​ установлены, следует нажать​отключены, но, если​
​ содержат данный последовательный​Но там нет​ автоматическим по истечению​ a = sh.[a1].CurrentRegion.Value​: Да, если конкретно​

​ E G H​​ Как этот проф.​​ сделать так, что​​Можно сделать чтобы​ <> FirstAddress​ цифрой 5 совсем,​ «Поиск листов книги»)​ ищет неполное совпадение​ мой лист «заказ»​ в Word, и​
​ на кнопку​ мы поставим галочки​ набор символов даже​ реализации поиска. Пользователь​ 30 секунд​ For i =​ известно, что ищем​ J K M​

​ Оніпко В.В. может​​ бы этот цикл​ выводились например полностью​End If​ поскольку она грубо​ok = 0​ по одному или​ появляется ошибка «#ИМЯ?»,​ файл Excel, и​«Найти всё»​ около соответствующих пунктов,​ внутри слова. Например,​ Windows 7 предложил​Medvedoc​ 1 To UBound(a)​ и где по​ N») arr =​

​ одновременно преподавать Грунтознавство​​ перемещался вниз по​ значения (а не​
​End If​ говоря дублирует вашу​
​If strInput <>​
​ нескольким символам, и​ а в исходнике​ картинки с названием​или​
​ то в таком​ релевантным запросу в​ свой файл. Я​

​: посмотрел код более​​ flag = True:​ столбцам.​ Split(«F I L​

​ у П-32 и​ строкам…и при этом​ ссылки на ячейки)​Next iSheet​
​ кнопку. И вывод​ «» Then​ отображает первое найденное​ появляется ошибка «#ЗНАЧ!»​ «визитка», т.д.​«Найти далее»​ случае, при формировании​ этом случае будет​ его протестировал и​ внимательнее =) а​ n = 0​Но на массивах​ O R») On​ Методика навчання біології​​ же менялось начальное​​Например надо найти​Application.ScreenUpdating = True​ должен быть в​For i =​ значение (ввёл «22»,​а в вашем​
​Как найти файл​, чтобы перейти к​ результата будет учитываться​ считаться слово «Направо».​ обнаружил незначительный минус,​
​ можно сделать так,​ For Each el​ в таком случае​ Error Resume Next​ у П-44?​ значение переменной name1​ цифру 5​ ‘включаем обновление экрана​ одну ячейку в​ 1 To Worksheets.Count​
​ а нашла «220156»).​ исходнике всё работает.​ определенного типа, смотрите​ поисковой выдаче.​ введенный регистр, и​ Если вы зададите​
​ который и описал​
​ чтобы вместо номера​
​ In CritArr If​
​ будет не менее​
​ ‘For i =​
​Да ещё и​
​Watcher_1​
​Результат с ссылками​
​MsgBox «Поиск завершён!»,​
​ виде текста как​
​If Worksheets(i).Name =​
​ А мне надо​
​Guest​
​ в статье «Поиск​
​Как видим, программа Excel​
​ точное совпадение. Если​
​ в поисковике цифру​
​ выше. И эт​
​ ячейки выводилось ее​
​ flag Then n​
​ изящно, и думаю​
​ 9 To 57​
​ в разных аудиториях?​
​: Я так понял​
​ (например)​ 64, «Поиск»​ в моем файлике​ strInput Then​ найти значение по​: эта функция VLookup​ документа Word по​ представляет собой довольно​ вы введете слово​ «1», то в​ оне значит, что​ название, точнее текст,​ = n +​ проще/понятнее. И скорее​ Step 2 For​Хотя я аудитории​ это мысли в​5​End Sub​ =)​Sheets(strInput).Select​ всем символам, по​ у меня не​ тексту» тут. Принцип​ простой, но вместе​ с маленькой буквы,​ ответ попадут ячейки,​ поленился.​ который в ней​ 1 If Len(el)​ всего будет работать​ i = 8​ не учитывал -​ слух? Иначе я​51​
​Sub Finder()​либо реализовано как​ok = 1​ количеству и по​ хочет работать. может​ один.​ с тем очень​ то в поисковую​ которые содержат, например,​Также на похожей​

CyberForum.ru

БД в Excel: организовать поиск по всем листам и по нескольким критериям

​ содержится?​​ Then If Application.Trim(a(i,​
​ быстрее. И нет​ To 56 Step​ правильно было бы​ не вижу никакой​156​Dim iRng As​ я хотел, то​End If​ их порядковому расположению​ подскажете, как ее​В Excel можно​ функциональный набор инструментов​ выдачу, ячейки содержащие​ число «516».​ теме нашел другой​Medvedoc​ n)) <> el​ особых требований к​ 2 Set col​ смотреть, чтоб если​ смысловой нагрузки…​
​567​ Range, TextForFind As​ есть сохранить мой​Next i​ (по артикулу). Т.е.,​ прописать в мой​ искать данные функциями,​ поиска. Для того,​ написание этого слова​Для того, чтобы перейти​​ вариант поисковика, который​​: Заменил в строчке​ Then flag =​ таблицам.​ = New Collection​ аудитория и предмет​na4ik​
​Юрий М​ String, FirstAddress As​ файлик, но с​If ok =​ если я ввел​ файл?​ можно искать, выбирать,​ чтобы произвести простейший​ с большой буквы,​ к следующему результату,​ реализован на одном​
​ .Value = «Лист:​ False: Exit For​Watcher_1​ For Each sh​ совпадают, то и​
​: Скорее это вопрос)​
​: Это ведь совсем​

​ String, n As​​ вашей реализацией всех​ 0 Then MsgBox​ «200543», то и​
​тухачевский​ переносить данные в​ писк, достаточно вызвать​ как это было​ опять нажмите кнопку​

​ листе, но при​​ » & iSheet.Name​ End If End​
​: Судя по ТЗ​ In Worksheets For​ препод должен повторяться!​..можно ли как​ другая задача (а​
​ Integer, iLastRow As​ результатов со всего​ «Листа с таким​ найти должна только​: посмотрел ваш файл​ другое место, в​ поисковое окно, ввести​ бы по умолчанию,​«Найти далее»​ этом выводит результаты​
​ & » Ячейка:​ If Next If​ как раз известно,​
​ Each el In​Как это прикрутить​ то задать смену​
​ то я уже​ Long​ листа =)​ именем нет»​
​ значение «200543». Что​ — не совсем​ другую таблицу, бланк,​ в него запрос,​ уже не попадут.​.​ поиска всех найденных​ » & iFoundRng.Address(0,​

​ flag Then ind​​ что к какому​ arr t =​

​ — думать не​​ значение ячейки?…что то​ сделал и формирование​iLastRow = Cells(Rows.Count,​Medvedoc​
​End If​ надо поменять в​ понятна формула: =ДВССЫЛ(АДРЕС(raw($A5);СТОЛБЕЦ();1;1;lst($A5))).​ т.д. формулами. Какими​ и нажать на​ Кроме того, если​Так можно продолжать до​ значений, заданных изначально.​ 0)​

​ = ind +​​ столбцу привязано. Единственное​ sh.Range(el & i).Value​ хочу, да и​ плана:​ гиперссылок). Уточните проблему,​ 1).End(xlUp).Row​: спасибо за предложение,​End Sub​

​ функции? И как​​можете расшифровать ее?​ способами можно искать​ кнопку. Но, в​ включена функция​ тех, пор, пока​ Мне надо как-то​значение iFoundRng.Address(0, 0)​

​ 1 For x​​ неудобство это, что​ If Len(t) Then​ может и не​j=11 Set rng​ чтобы не переделывать​Range(Cells(5, 1), Cells(iLastRow​ но надстройку не​shurun999​ в функции, если​при ее копировании​ данные в Excel,​ то же время,​«Ячейки целиком»​ отображение результатов не​ данную возможность реализовать​ на iFoundRng.Offset(0, 0)​ = 1 To​ к одной строке​ col.Add t, CStr(t)​ нужно…​ = .Range(«D(j):X(j)») ——————————​ потом.​ + 1, 2)).Clear​ надо =) мне​: Есть задача создания​

​ при поиске не​​ и вставке в​ смотрите в статье​
​ существует возможность настройки​, то в выдачу​ начнется по новому​ в макросе пользователя​ и в выводимых​ 13 Sheets(1).Cells(ind, x).Value​ привязано несколько значений​ If Err Then​Hugo121​ j=j+2​mlm1​iLastRow = 4​ два варианта верхних​ поиска по нескольким​ найдено совпадений, оставить​ мой лист «заказ»​ «Поиск в Excel»​ индивидуального поиска с​ будут добавляться только​
​ кругу.​ windows 7.​ результатах вместо адреса​ = a(i, x)​
​ из нескольких строк​ Debug.Print sh.Name &​:​или как это​: Прикрепил файл​TextForFind = InputBox(«Введите​ нравятся​ листам одной книги.​

​ строки пустыми или​​ появляется ошибка «#ИМЯ?»,​
​ и в перечне​ большим количеством различных​ элементы, содержащие точное​В случае, если при​Medvedoc​ ячейки стало показываться​ Next End If​

​Hugo121​​ «-» & el​
​Hugo121​ можно написать для​Юрий М​ искомое слово (значение)»,​
​Юрий М​ Нужно вводить номер​ заполнить пунктирами (вместо​ а в исходнике​ статей по этой​
​ параметров и дополнительных​ наименование. Например, если​ запуске поисковой процедуры​: пришлось заархивировать​ содержимое самой ячейки​ Next End If​: Ещё вариант -​ & i &​
​, хотел уточнить…а где​ excel?​: Так?​ » Запрос для​: А кто Вам​
​ телефона, и чтоб​ нулей)?{/post}{/quote}​ появляется ошибка «#ЗНАЧ!»​ теме, расположенном в​ настроек.​ вы зададите поисковый​ вы нажмете на​Файл удален​(текст) =)​
​ Next Application.ScreenUpdating =​ макросом ставить стандартный​
​ «-» & t:​ осуществляется само сравнение​Скорее это вопрос)​mlm1​ поиска»)​ мешает «убрать» эту​ открывались все его​Моя по полному​а в вашем​ конце статьи.​Автор: Максим Тютюшев​ запрос «Николаев», то​ кнопку​- велик размер​Остался вопрос как​ True End Sub​ фильтр и копировать​ Err.Clear Next Next​ значений ячеек?…или возможно​..можно ли как​: Спасибо так.​If TextForFind =​ жёлтую ячейку? Она​ данные, на каждом​ ищет :) если​ исходнике всё работает.{/post}{/quote}​Поработали — пора​Рассмотрим,​ ячейки, содержащие текст​«Найти все»​ — [​ сделать так, чтобы​Hugo121​ видимые. Но мне​ Next End SubВ​ так как я​ то задать смену​А можно без​ «» Then​

​ в моём макросе​​ листе таблица (​ не находит пишет​вечером было избыточно​ отдохнуть. )) А​как найти документ​ «Николаев А. Д.»,​
​, все результаты выдачи​МОДЕРАТОРЫ​ выводились все результаты​
​: Чуть исправил код​ этот способ не​ коде нужно было​ понял, объект Collection​ значение ячейки?…что то​

​ вывода промежуточных результатов​​MsgBox «Вы ничего​ не задействована. Значение​
​ 1ст поряд.номер, 2-​ 0.​упростил​ если серьёзно, то,​

​Excel по содержимому текста​​ в выдачу уже​ будут представлены в​]​ с заданным значением​ — теперь вместо​ нравится… хотя работает​ добавить Cstr(t), т.к.​ не может содержать​ плана:​
​ (окошек) Найдено столько​ не указали», 48,​ для поиска выбирается​ сам номер,3- данные,​Alexander_V​

CyberForum.ru

Поиск по листам всей книги [ТЕМА ЗАКРЫТА — повторное нарушение]

​это пользовательская функция​​ в Excel есть​,​ добавлены не будут.​ виде списка в​Юрий М​ с одной страницы​ currentregion обрабатываю usedrange,​ быстро.​ тут уже числа.​ одинаков элементов?​j=11 Set rng​ -то штук на​ «Вы чё, в​ по запросу -​ 4- данные, 5-данные).​: Внимательно перечитал пост​

​нужно в вашу​​ много возможностей, кроме​

​таблицы​​По умолчанию, поиск производится​ нижней части поискового​: Прошлось удалить.​ =)​ поэтому в J1​Lubaxa​Чтоб показывало и​If Len(t) Then​ = .Range(«D(j):X(j)») ——————————​

​ листе 1 и​​ натуре?»​ Вы не заметили?​ как это сделать,​ думал нужно что​
​ книгу скопировать модуль​ стандартных функций Excel,​, например, когда не​
​ только на активном​ окна. В этом​Medvedoc​Medvedoc​ можно ничего не​

​: Поиск по этим​​ с чем совпало​ col.Add t, t​ j=j+2​ т.д.​Exit Sub​ :-) Кнопку очистки​ подскажите.​ бы «0» писало​ из прикрепленной книги​
​ которые можно применить​ помним название файла,​ листе Excel. Но,​

​ списке находятся информация​​:​: нашел макрос другого​ писать.​

​ таблицам нужен по​​ — нужно вместо​ If Err Then…просто​или как это​

​Юрий М​End If​ тоже можете удалить​AntikBantik​ оказывается не надо​
​Alexander_V​ в своей работе.​

​ документа, папки, т.д.​​ если параметр​ о содержимом ячеек​Файл удален​

​ поисковика. В нем​Ну и добавил​ столбцам: адрес или​ коллекции использовать словарь.​ не могу понять​
​ можно написать для​: У меня не​

​For n =​ — диапазон будет​: был бы файл​ :)​: Особо не тестировал​

​ Например, как можно​​Первый вариант.​«Искать»​ с данными, удовлетворяющими​- велик размер​ с листа отображаются​ режим отбора по​ имя/фамилия (в этих​ Это сейчас писать​

​ з чего бы​​ excel?​ было — сколько​ 2 To Sheets.Count​ очищаться автоматически.​ может и подсказали​в приложении файл​

​ времени нет. Если​ использовать шрифт для​Поиск документа​вы переведете в​ запросу поиска, указан​ — [​
​ все значения. Как​

​ похожим значениям.​ случаях идеальный вариант,​ некогда, попробуйте сами​ появляться Err…если к​Hugo121​ найдено. Была информация,​

​With Sheets(n).UsedRange​​Medvedoc​ бы, а так​ формула возвращает пустое​ чего пишите.​ построения графика в​Excel по названию папки.​ позицию​ их адрес расположения,​МОДЕРАТОРЫ​ можно часть данного​

​И ещё -​
​ если можно выводить​
​ на примерах сделать.​ нему нету никакого​
​: Может так:​ если НЕ найдено​Set iRng =​
​: в данный момент​ не зная точной​

​ место (визуально).​Alexander_V​ ячейке, т.д. Такой​
​Нажимаем кнопку «Пуск»,​«В книге»​ а также лист​

​]​ кода перенести в​

​ теперь правее пишется​
​ все близкие по​ Ну или может​ условия =​
​Set rng =​ на листе. Убрал​
​ .Find(What:=TextForFind, LookIn:=xlFormulas, LookAt:=xlPart)​

​ у меня код​
​ структуры данных вместо​PS: Хотя после​
​: Моя функция тоже​ способ мы рассмотрели​ расположенную в левом​
​, то поиск будет​
​ и книга, к​Medvedoc​
​ свой код, чтобы​
​ имя листа, откуда​ значению результаты) или​

​ кто другой попробует​Hugo121​
​ .Range(«D» & j​
​ сообщение.​
​If Not iRng​ модуля вот такой​
​ одной попытки для​

​ формул The_Prist-а и​​ пользовательская так что​ на примере создания​ нижнем углу монитора.​ производиться по всем​

​ которым они относятся.​​: я просто не​ результаты поиска выводили​ взята строка. Может​ SN (номер товара).​ сделать, из интереса.​: Collection содержит уникальные​ & «:X» &​mlm1​ Is Nothing Then​Option Explicit​ получения результата их​ Лузер™-а как то​ не забудьте скопировать​ простой игры. Смотрите​ В появившемся списке​ листам открытого файла.​ Для того, чтобы​ знаю как макрос​ все найденные значения​ пригодится когда…​

​ Т.е. в соответствующую​Lubaxa​ ключи и при​ j)​: Спасибо​FirstAddress = iRng.Address​Sub Поиск()​ будет N -​ даже не удобно​

​ модуль​ статью «Игра в​ нажимаем на кнопку​В параметре​ перейти к любому​ Windows 7 подправить,​ с листа​Hugo121​ форму вводится один​: Добрый вечерок!​

​ попытке дополнить коллекцию​​na4ik​то что искал​Do​Dim iFoundRng As​ ое количество.​ свою выкладывать:).​dude​ Excel».​ «Этот компьютер» (в​«Просматривать»​ из результатов выдачи,​ чтобы он выводил​Сам код​: Думаю ещё есть​

​ из этих критериев​​Помогите, пожалуйста…. Есть​ с уже имеющимся​
​: Может так?​davaispoem​Cells(iLastRow + 1,​ Range​Hugo121​ytk5kyky​: с учетом решения​dendy_81​ Word 2013) или​можно изменить направление​
​ достаточно просто кликнуть​ все найденные значения​Private Sub CommandButton1_Click()​ смысл добавить​ (максимум 2). Насколько​ база данных в​ ключём возникает ошибка​Sub search_main() Dim​: Здравствуйте! Уважаемые специалисты,​ 1) = Sheets(n).Name​Dim iSheet As​: C формой нужно​

​: По хорошему, если​​ Alexander_V все короче​
​: Здравствуйте. У меня​​ «Мой компьютер» (в​ поиска. По умолчанию,​​ по нему левой​​ с листа по​

​Dim MyLeight As​​Option Compare Textчтоб​

​ я понимаю. то​​ Excel. Пока использовалась​​ (для продолжения работы​​ sh As Worksheet​ вновь прошу вашей​​Cells(iLastRow + 1,​​ Worksheet​

​ делать. Но можно​​ ничего не найдено,​а автора все​ такой вопрос.​ Word 2007).​ как уже говорилось​ кнопкой мыши. После​ запросу​

planetaexcel.ru

​ Integer​

Поиск в программе Microsoft Excel

В документах Microsoft Excel, которые состоят из большого количества полей, часто требуется найти определенные данные, наименование строки, и т.д. Очень неудобно, когда приходится просматривать огромное количество строк, чтобы найти нужное слово или выражение. Сэкономить время и нервы поможет встроенный поиск Microsoft Excel. Давайте разберемся, как он работает, и как им пользоваться.

Поисковая функция в Excel

Поисковая функция в программе Microsoft Excel предлагает возможность найти нужные текстовые или числовые значения через окно «Найти и заменить». Кроме того, в приложении имеется возможность расширенного поиска данных.

Способ 1: простой поиск

Простой поиск данных в программе Excel позволяет найти все ячейки, в которых содержится введенный в поисковое окно набор символов (буквы, цифры, слова, и т.д.) без учета регистра.

  1. Находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая расположена на ленте в блоке инструментов «Редактирование». В появившемся меню выбираем пункт «Найти…». Вместо этих действий можно просто набрать на клавиатуре сочетание клавиш Ctrl+F.

После того, как вы перешли по соответствующим пунктам на ленте, или нажали комбинацию «горячих клавиш», откроется окно «Найти и заменить» во вкладке «Найти». Она нам и нужна. В поле «Найти» вводим слово, символы, или выражения, по которым собираемся производить поиск. Жмем на кнопку «Найти далее», или на кнопку «Найти всё».

При нажатии на кнопку «Найти далее» мы перемещаемся к первой же ячейке, где содержатся введенные группы символов. Сама ячейка становится активной.

Поиск и выдача результатов производится построчно. Сначала обрабатываются все ячейки первой строки. Если данные отвечающие условию найдены не были, программа начинает искать во второй строке, и так далее, пока не отыщет удовлетворительный результат.

Поисковые символы не обязательно должны быть самостоятельными элементами. Так, если в качестве запроса будет задано выражение «прав», то в выдаче будут представлены все ячейки, которые содержат данный последовательный набор символов даже внутри слова. Например, релевантным запросу в этом случае будет считаться слово «Направо». Если вы зададите в поисковике цифру «1», то в ответ попадут ячейки, которые содержат, например, число «516».

Для того, чтобы перейти к следующему результату, опять нажмите кнопку «Найти далее».

Так можно продолжать до тех, пор, пока отображение результатов не начнется по новому кругу.

  • В случае, если при запуске поисковой процедуры вы нажмете на кнопку «Найти все», все результаты выдачи будут представлены в виде списка в нижней части поискового окна. В этом списке находятся информация о содержимом ячеек с данными, удовлетворяющими запросу поиска, указан их адрес расположения, а также лист и книга, к которым они относятся. Для того, чтобы перейти к любому из результатов выдачи, достаточно просто кликнуть по нему левой кнопкой мыши. После этого курсор перейдет на ту ячейку Excel, по записи которой пользователь сделал щелчок.
  • Способ 2: поиск по указанному интервалу ячеек

    Если у вас довольно масштабная таблица, то в таком случае не всегда удобно производить поиск по всему листу, ведь в поисковой выдаче может оказаться огромное количество результатов, которые в конкретном случае не нужны. Существует способ ограничить поисковое пространство только определенным диапазоном ячеек.

      Выделяем область ячеек, в которой хотим произвести поиск.

  • Набираем на клавиатуре комбинацию клавиш Ctrl+F, после чего запуститься знакомое нам уже окно «Найти и заменить». Дальнейшие действия точно такие же, что и при предыдущем способе. Единственное отличие будет состоять в том, что поиск выполняется только в указанном интервале ячеек.
  • Способ 3: Расширенный поиск

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

    К тому же, в выдачу может попасть не только содержимое конкретной ячейки, но и адрес элемента, на который она ссылается. Например, в ячейке E2 содержится формула, которая представляет собой сумму ячеек A4 и C3. Эта сумма равна 10, и именно это число отображается в ячейке E2. Но, если мы зададим в поиске цифру «4», то среди результатов выдачи будет все та же ячейка E2. Как такое могло получиться? Просто в ячейке E2 в качестве формулы содержится адрес на ячейку A4, который как раз включает в себя искомую цифру 4.

    Но, как отсечь такие, и другие заведомо неприемлемые результаты выдачи поиска? Именно для этих целей существует расширенный поиск Excel.

      После открытия окна «Найти и заменить» любым вышеописанным способом, жмем на кнопку «Параметры».

    В окне появляется целый ряд дополнительных инструментов для управления поиском. По умолчанию все эти инструменты находятся в состоянии, как при обычном поиске, но при необходимости можно выполнить корректировку.

    По умолчанию, функции «Учитывать регистр» и «Ячейки целиком» отключены, но, если мы поставим галочки около соответствующих пунктов, то в таком случае, при формировании результата будет учитываться введенный регистр, и точное совпадение. Если вы введете слово с маленькой буквы, то в поисковую выдачу, ячейки содержащие написание этого слова с большой буквы, как это было бы по умолчанию, уже не попадут. Кроме того, если включена функция «Ячейки целиком», то в выдачу будут добавляться только элементы, содержащие точное наименование. Например, если вы зададите поисковый запрос «Николаев», то ячейки, содержащие текст «Николаев А. Д.», в выдачу уже добавлены не будут.

    По умолчанию, поиск производится только на активном листе Excel. Но, если параметр «Искать» вы переведете в позицию «В книге», то поиск будет производиться по всем листам открытого файла.

    В параметре «Просматривать» можно изменить направление поиска. По умолчанию, как уже говорилось выше, поиск ведется по порядку построчно. Переставив переключатель в позицию «По столбцам», можно задать порядок формирования результатов выдачи, начиная с первого столбца.

    В графе «Область поиска» определяется, среди каких конкретно элементов производится поиск. По умолчанию, это формулы, то есть те данные, которые при клике по ячейке отображаются в строке формул. Это может быть слово, число или ссылка на ячейку. При этом, программа, выполняя поиск, видит только ссылку, а не результат. Об этом эффекте велась речь выше. Для того, чтобы производить поиск именно по результатам, по тем данным, которые отображаются в ячейке, а не в строке формул, нужно переставить переключатель из позиции «Формулы» в позицию «Значения». Кроме того, существует возможность поиска по примечаниям. В этом случае, переключатель переставляем в позицию «Примечания».

    Ещё более точно поиск можно задать, нажав на кнопку «Формат».

    При этом открывается окно формата ячеек. Тут можно установить формат ячеек, которые будут участвовать в поиске. Можно устанавливать ограничения по числовому формату, по выравниванию, шрифту, границе, заливке и защите, по одному из этих параметров, или комбинируя их вместе.

    Если вы хотите использовать формат какой-то конкретной ячейки, то в нижней части окна нажмите на кнопку «Использовать формат этой ячейки…».

    После этого, появляется инструмент в виде пипетки. С помощью него можно выделить ту ячейку, формат которой вы собираетесь использовать.

    После того, как формат поиска настроен, жмем на кнопку «OK».

    Бывают случаи, когда нужно произвести поиск не по конкретному словосочетанию, а найти ячейки, в которых находятся поисковые слова в любом порядке, даже, если их разделяют другие слова и символы. Тогда данные слова нужно выделить с обеих сторон знаком «*». Теперь в поисковой выдаче будут отображены все ячейки, в которых находятся данные слова в любом порядке.

  • Как только настройки поиска установлены, следует нажать на кнопку «Найти всё» или «Найти далее», чтобы перейти к поисковой выдаче.
  • Как видим, программа Excel представляет собой довольно простой, но вместе с тем очень функциональный набор инструментов поиска. Для того, чтобы произвести простейший писк, достаточно вызвать поисковое окно, ввести в него запрос, и нажать на кнопку. Но, в то же время, существует возможность настройки индивидуального поиска с большим количеством различных параметров и дополнительных настроек.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    ВПР с поиском по нескольким листам

    ВПР по всем листам (43,0 KiB, 12 619 скачиваний)

    Если необходимо найти какое-либо значение в большой таблице очень часто применяется функция ВПР. Но ВПР работает только с одной таблицей и нет никакой возможности средствами самой функции просмотреть искомое значение на нескольких листах. Если поиск необходимо осуществить только по двум листам, то можно схитрить:
    =ВПР( A1 ;ЕСЛИ(ЕНД(ВПР( A1 ;Лист2!A1:B10;2;0));Лист3!A1:B10;Лист2!A1:B10);2;0)

    А когда листов больше? Можно плодить ЕСЛИ. Но это во-первых совсем не наглядно и во-вторых очень непрактично, т.к. при добавлении или удалении листов придется править всю мега-формулу. Да и при работе с количеством листов более 10 есть большой шанс, что длина формулы выйдет за пределы допустимой.

    Есть небольшой прием, который поможет искать значение в указанных листах. Для начала необходимо создать на листе список листов книги, в которых искать значение. В приложенном к статье примере они записаны в диапазоне $E$2:$E$5 .
    =ВПР( A2 ;ДВССЫЛ(«‘»&ИНДЕКС( $E$2:$E$5 ;ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ(ДВССЫЛ(«‘»& $E$2:$E$5 &»‘!A1:A50″); A2 )>0;0))&»‘!A:B»);2;0)

    Формула вводится в ячейку как формула массива — т.е. сочетанием клавиш Ctrl+Shift+Enter. Это очень важное условие. Если формулу не вводить в ячейку как формулу массива, то необходимого результата не получить.
    Попробую кратенько описать принцип работы данной формулы.

    Перед чтением дальше советую скачать пример:

    ВПР по всем листам (43,0 KiB, 12 619 скачиваний)

    ДВССЫЛ нам нужна для преобразования текстового представления ссылок на листы в действительные. Подробно не буду останавливаться на принципе работы ДВССЫЛ, просто приведу этапы вычислений:
    СЧЁТЕСЛИ(ДВССЫЛ(«‘»& $E$2:$E$5 &»‘!A1:A50»); A2 )

    В результате вычисления данного блока у нас получается массив из количества повторений искомого значения на каждом из указанных листов: СЧЁТЕСЛИ(<1;0;0;0>;A2) . Поэтому следующий блок
    ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ(ДВССЫЛ(«‘»& $E$2:$E$5 &»‘!A1:A50»); A2 )>;0;0)
    работает именно с этим:
    ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ(<1;0;0;0>; A2 )>0;0)
    Читать подробнее про СЧЁТЕСЛИ

    в результате чего мы получаем позицию имени листа в массиве имен листов $E$2:$E$5 , с помощью ИНДЕКС получаем имя листа и подставляем это имя уже к ДВССЫЛ, а она в ВПР:
    =ВПР( A2 ;ДВССЫЛ(«‘»&ИНДЕКС(<«Астраханьоблгаз»:»Липецкоблгаз»:»Оренбургоблгаз»:»Ростовоблгаз»>;1)&»‘!A:B»);2;0) =>
    =ВПР( A2 ;ДВССЫЛ(«‘Лист2’!A:B»);2;0) =>
    =ВПР( A2 ;’Лист2′!A:B;2;0)

    Что нам и требовалось. Теперь если в книгу будут добавлены еще листы, то необходимо будет всего лишь дописать их к диапазону $E$2:$E$5 и при необходимости этот диапазон расширить. Так же можно задать диапазон $E$2:$E$5 как динамический и тогда необходимость в правке формулы отпадет вовсе.

    Используемые в формуле величины:
    A2 — ссылка на ячейку с искомым значением. Т.е. указывается то значение, которое требуется найти на листах.

    $E$2:$E$5 — диапазон с именами листов, в которых требуется осуществлять поиск указанного значения ( A1 ).

    Диапазон «‘!A1:A50» — это диапазон, в котором СЧЁТЕСЛИ ищет совпадения. Поэтому указывается только один столбец данных. При необходимости следует расширить или изменить. Можно указать так же «‘!A:A» , но при этом следует учитывать, что указание целого столбца может привести к значительному увеличению времени выполнения функции. Поэтому имеет смысл просто задать диапазон с запасом, например «‘!A1:A10000» .

    «‘!A:B» — диапазон для аргумента ВПР — Таблица. В первом столбце этого диапазона на каждом из указанных листов ищется указанное значение ( A2 ). При нахождении возвращается значение из указанного столбца. Читать подробнее про ВПР>>

    В примере к статье так же можно посмотреть формулу, которая для каждого значения подставляет имя листа, в котором это значение было найдено.

    ВПР по всем листам (43,0 KiB, 12 619 скачиваний)

    Так же можно искать по нескольким листам разных книг , а не только по нескольким листам одной книги. Для этого необходимо будет в списке листов вместе с именами листов добавить имена книг в квадратных скобках: [Книга1.xlsb]Май
    [Книга1.xlsb]Июнь
    [Книга2.xlsb]Май
    [Книга2.xlsb]Июнь
    Перечисленные книги обязательно должны быть открыты

    Решил добавить простенькую функцию пользователя(UDF) для тех, кому проще «общаться» с VBA, чем с формулами. Функция ищет указанное значение во всех листах книги, в которой записана(даже в скрытых):

    Function VLookUpAllSheets(vCriteria As Variant, rTable As Range, lColNum As Long, Optional iPart As Integer = 1) As Variant Dim rFndRng As Range If iPart <> 1 Then iPart = 2 For i = 1 To Worksheets.Count If Sheets(i).Name <> Application.Caller.Parent.Name Then With Sheets(i) Set rFndRng = .Range(rTable.Address).Resize(, 1).Find(vCriteria, , xlValues, iPart) If Not rFndRng Is Nothing Then VLookUpAllSheets = rFndRng.Offset(, lColNum — 1).Value Exit For End If End With End If Next i End Function

    Функция попроще, чем ВПР — последний аргумент(интервальный_просмотр) выполняет несколько иные, чем в ВПР функции. Хотя полагаю немногие его используют в классическом варианте.
    rTable — указывается таблица для поиска значений(как в стандартной ВПР)
    vCriteria — указывается ссылка на ячейку или текстовое значение для поиска
    lColNum — указывается номер столбца в таблице rTable, значение из которого необходимо вернуть — может быть ссылкой на столбец — СТОЛБЕЦ().
    iPart — указывается метод просмотра. Если не указан, либо указана цифра 1, то поиск осуществляется по полному совпадению с ячейкой. Но в таком варианте допускается применение подстановочных символов * и ?. Если указано значение, отличное от 1, то совпадение будет отбираться по части вхождения. Если в vCriteria указать «при», то совпадением будет считаться и слово «прибыль»(первый буквы совпадают) и «неприятный»(в середине встречается «при»). Но в этом случае знаки * и ? будут восприниматься «как есть». Может пригодиться, если в искомом тексте присутствуют символы звездочки и вопросительного знака и надо найти совпадения, учитывая эти символы.

    Статья помогла? Поделись ссылкой с друзьями!

    Надстройка для поиска на всех листах книги Excel

    Надстройка SearchText предназначена для поиска заданного текста в книге Excel, с выводом результатов поиска на отдельный лист.

    При запуске надстройка формирует панель инструментов, с которой осуществляется запуск всех макросов:

    В Excel 2007 и 2010 панель инструментов можно найти на вкладке «Надстройки»:

    Надстройка SearchText является расширенной версией надстройки для поиска на текущем листе.

    Назначение кнопок надстройки:

    — поле для ввода искомого текста. Нажатие клавиши Enter запускает поиск.

    — удаление листа с результатами поиска. (выполняется автоматически при повторном поиске)

    — кнопки для включения (красная) и выключения (белая) режима подсветки значений, больших, чем введенное число
    (число запрашивается в диалоговом окне при нажатии на красную лампочку)

    или — переключатель режимов поиска
    (щелкните на этой кнопке для переключения режима поиска)

    При запуске поиска (вводе числа в текстовое поле, и нажатии Enter) макрос создаёт в текущем файле дополнительный лист (с названием «Результаты поиска»),
    и копирует на этот лист все строки, в которых содержится заданный текст.

    Выполняется поиск по частичному совпадению текста (т.е., при поиске текста 1234 будут найдены ячейки, содержащие числа 12345, 5612348 и т.д.)

    На листе с результатами поиска устанавливается ширина столбцов, совпадающая с шириной столбцов исходного листа, если поиск выполняется по одному листу,
    или на лист результатов добавляется дополнительный столбец, в котором для каждой найденной строки указывается, на каком из листов она была найдена:

    В режиме поиска по всем листам книги Excel найденные строки группируются по названию листа-источника, заголовок каждого блока строк окрашивается в произвольный цвет.

    Во время выполнения происка отображается прогресс-бар, отображающий количество найденных строк, и текущее действие (поиск или копирвоание результатов)

    Как в excel сделать поиск по всем листам

    Ингвар, доброго времени.

    В качестве не очень изящного, но всё-таки решения могу предложить следующую формулу, которую можно протянуть по всем ячейкам Вашего примера. Вставлять в B3 на Листе1.

    На первый взгляд выглядит довольно объёмно и страшно, но если разобраться — довольно проста.

    Простейшая функция для поиска — ВПР. С её помощью можно найти данные по одной таблице. Что, я уверен, Вы уже с лёгкостью делаете. Если ВПР будет искать в таблице, где НЕТ того, что мы ищем (например, если искать «единицу» на «Листе3» Вашего примера), формула выдаёт ошибку Н/Д. И это свойство можно использовать.

    Функция ЕСЛИОШИБКА проверяет то, что мы вводим. И если наша функция внутри ЕСЛИОШИБКИ выдает, например, Н/Д, то ЕСЛИОШИБКА выдаст нам второе значение, записанное через точку с запятой. И моя формула построена следующим образом:

    = ЕСЛИОШИБКА (*искать в первой таблице* ; *если не нашли в первой таблице, ищем во второй* )

    При этом внутрь условного куска *если не нашли в первой таблице, ищем во второй* можно вложить вторую ЕСЛИОШИБКА для просмотра ещё одной таблицы. Что я и сделал. Получилось:

    = ЕСЛИОШИБКА (*искать в первой таблице* ; ЕСЛИОШИБКА ( *искать во второй таблице* ; *искать в третьей таблице) )

    При этом таких вложений из ЕСЛИОШИБКА можно сделать не ограниченное количество.

    Замечу, что важно закрепить каждую таблицу внутри ВПР долларами, прибить гвоздями так сказать, чтобы не уехала таблица при протяжке формулы вниз.

    Советы и лайфхаки по работе с Excel

    Многие сталкивались с файлами Ексель, в которых создано огромное количество листов. Чтобы найти нужный лист нужно прокрутить все созданные в книге листы.

    Но есть более простой способ быстро открыть нужный лист.

    Щелкните правой кнопкой мыши на кнопки прокрутки листов, которые находятся слева от названия листов и выберите нужный лист:

    Как снять пароль в Excel? Три рабочих способа снятия пароля.

    Способ 1. (Используем программу) Ищем в поисковике и загружаем программу

    Как собрать несколько книг Excel в одну?

    Например, мы имеем много рабочих книг Excel, и мы хотим

    Что такое макрос и куда его вставлять в Excel?

    Нам в работе иногда не хватает стандартных возможностей Эксель и приходится напрягать

    Как добавить абзац в ячейке Excel?

    Достаточно часто при заполнении ячейки текстом, возникает необходимость ввести текст

    Как посчитать количество уникальных значений в колонке Excel?

    Иногда в работе нам нужно посчитать уникальные значения в определенной

    Отсортировать уникальные значения в Excel

    Предположим, что у нас есть такая таблица с перечнем соглашений,

    Как сделать и добавить выпадающий список в Excel?

    В Excel есть одна интересная особенность, а именно возможность вводить

    Как быстро перейти в нужный лист книги Excel?

    Многие сталкивались с файлами Ексель, в которых создано огромное количество

    Содержание

    • 1 Поисковая функция в Excel
      • 1.1 Способ 1: простой поиск
      • 1.2 Способ 2: поиск по указанному интервалу ячеек
      • 1.3 Способ 3: Расширенный поиск
      • 1.4 Помогла ли вам эта статья?
      • 1.5 Поиск по нескольким листам с помощью макроса VBA
    • 2 Простой поиск
    • 3 Расширенный поиск
    • 4 Разновидности поиска
      • 4.1 Поиск совпадений
      • 4.2 Фильтрация
      • 4.3 Видео: Поиск в таблице Excel

    поиск по листам в excel как сделать

    В документах Microsoft Excel, которые состоят из большого количества полей, часто требуется найти определенные данные, наименование строки, и т.д. Очень неудобно, когда приходится просматривать огромное количество строк, чтобы найти нужное слово или выражение. Сэкономить время и нервы поможет встроенный поиск Microsoft Excel. Давайте разберемся, как он работает, и как им пользоваться.

    Поисковая функция в программе Microsoft Excel предлагает возможность найти нужные текстовые или числовые значения через окно «Найти и заменить». Кроме того, в приложении имеется возможность расширенного поиска данных.

    Способ 1: простой поиск

    Простой поиск данных в программе Excel позволяет найти все ячейки, в которых содержится введенный в поисковое окно набор символов (буквы, цифры, слова, и т.д.) без учета регистра.

    1. Находясь во вкладке «Главная», кликаем по кнопке «Найти и выделить», которая расположена на ленте в блоке инструментов «Редактирование». В появившемся меню выбираем пункт «Найти…». Вместо этих действий можно просто набрать на клавиатуре сочетание клавиш Ctrl+F.
    2. После того, как вы перешли по соответствующим пунктам на ленте, или нажали комбинацию «горячих клавиш», откроется окно «Найти и заменить» во вкладке «Найти». Она нам и нужна. В поле «Найти» вводим слово, символы, или выражения, по которым собираемся производить поиск. Жмем на кнопку «Найти далее», или на кнопку «Найти всё».
    3. При нажатии на кнопку «Найти далее» мы перемещаемся к первой же ячейке, где содержатся введенные группы символов. Сама ячейка становится активной.

      Поиск и выдача результатов производится построчно. Сначала обрабатываются все ячейки первой строки. Если данные отвечающие условию найдены не были, программа начинает искать во второй строке, и так далее, пока не отыщет удовлетворительный результат.

      Поисковые символы не обязательно должны быть самостоятельными элементами. Так, если в качестве запроса будет задано выражение «прав», то в выдаче будут представлены все ячейки, которые содержат данный последовательный набор символов даже внутри слова. Например, релевантным запросу в этом случае будет считаться слово «Направо». Если вы зададите в поисковике цифру «1», то в ответ попадут ячейки, которые содержат, например, число «516».

      Для того, чтобы перейти к следующему результату, опять нажмите кнопку «Найти далее».

      поиск по листам в excel как сделать

      Так можно продолжать до тех, пор, пока отображение результатов не начнется по новому кругу.

    4. В случае, если при запуске поисковой процедуры вы нажмете на кнопку «Найти все», все результаты выдачи будут представлены в виде списка в нижней части поискового окна. В этом списке находятся информация о содержимом ячеек с данными, удовлетворяющими запросу поиска, указан их адрес расположения, а также лист и книга, к которым они относятся. Для того, чтобы перейти к любому из результатов выдачи, достаточно просто кликнуть по нему левой кнопкой мыши. После этого курсор перейдет на ту ячейку Excel, по записи которой пользователь сделал щелчок.

    поиск по листам в excel как сделать

    Способ 2: поиск по указанному интервалу ячеек

    Если у вас довольно масштабная таблица, то в таком случае не всегда удобно производить поиск по всему листу, ведь в поисковой выдаче может оказаться огромное количество результатов, которые в конкретном случае не нужны. Существует способ ограничить поисковое пространство только определенным диапазоном ячеек.

    1. Выделяем область ячеек, в которой хотим произвести поиск.
    2. Набираем на клавиатуре комбинацию клавиш Ctrl+F, после чего запуститься знакомое нам уже окно «Найти и заменить». Дальнейшие действия точно такие же, что и при предыдущем способе. Единственное отличие будет состоять в том, что поиск выполняется только в указанном интервале ячеек.

    поиск по листам в excel как сделать

    Способ 3: Расширенный поиск

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

    К тому же, в выдачу может попасть не только содержимое конкретной ячейки, но и адрес элемента, на который она ссылается. Например, в ячейке E2 содержится формула, которая представляет собой сумму ячеек A4 и C3. Эта сумма равна 10, и именно это число отображается в ячейке E2. Но, если мы зададим в поиске цифру «4», то среди результатов выдачи будет все та же ячейка E2. Как такое могло получиться? Просто в ячейке E2 в качестве формулы содержится адрес на ячейку A4, который как раз включает в себя искомую цифру 4.

    поиск по листам в excel как сделать

    Но, как отсечь такие, и другие заведомо неприемлемые результаты выдачи поиска? Именно для этих целей существует расширенный поиск Excel.

    1. После открытия окна «Найти и заменить» любым вышеописанным способом, жмем на кнопку «Параметры».
    2. В окне появляется целый ряд дополнительных инструментов для управления поиском. По умолчанию все эти инструменты находятся в состоянии, как при обычном поиске, но при необходимости можно выполнить корректировку.

      поиск по листам в excel как сделать

      По умолчанию, функции «Учитывать регистр» и «Ячейки целиком» отключены, но, если мы поставим галочки около соответствующих пунктов, то в таком случае, при формировании результата будет учитываться введенный регистр, и точное совпадение. Если вы введете слово с маленькой буквы, то в поисковую выдачу, ячейки содержащие написание этого слова с большой буквы, как это было бы по умолчанию, уже не попадут. Кроме того, если включена функция «Ячейки целиком», то в выдачу будут добавляться только элементы, содержащие точное наименование. Например, если вы зададите поисковый запрос «Николаев», то ячейки, содержащие текст «Николаев А. Д.», в выдачу уже добавлены не будут.

      поиск по листам в excel как сделать

      По умолчанию, поиск производится только на активном листе Excel. Но, если параметр «Искать» вы переведете в позицию «В книге», то поиск будет производиться по всем листам открытого файла.

      поиск по листам в excel как сделать

      В параметре «Просматривать» можно изменить направление поиска. По умолчанию, как уже говорилось выше, поиск ведется по порядку построчно. Переставив переключатель в позицию «По столбцам», можно задать порядок формирования результатов выдачи, начиная с первого столбца.

      поиск по листам в excel как сделать

      В графе «Область поиска» определяется, среди каких конкретно элементов производится поиск. По умолчанию, это формулы, то есть те данные, которые при клике по ячейке отображаются в строке формул. Это может быть слово, число или ссылка на ячейку. При этом, программа, выполняя поиск, видит только ссылку, а не результат. Об этом эффекте велась речь выше. Для того, чтобы производить поиск именно по результатам, по тем данным, которые отображаются в ячейке, а не в строке формул, нужно переставить переключатель из позиции «Формулы» в позицию «Значения». Кроме того, существует возможность поиска по примечаниям. В этом случае, переключатель переставляем в позицию «Примечания».

      поиск по листам в excel как сделать

      Ещё более точно поиск можно задать, нажав на кнопку «Формат».

      поиск по листам в excel как сделать

      При этом открывается окно формата ячеек. Тут можно установить формат ячеек, которые будут участвовать в поиске. Можно устанавливать ограничения по числовому формату, по выравниванию, шрифту, границе, заливке и защите, по одному из этих параметров, или комбинируя их вместе.

      поиск по листам в excel как сделать

      Если вы хотите использовать формат какой-то конкретной ячейки, то в нижней части окна нажмите на кнопку «Использовать формат этой ячейки…».

      поиск по листам в excel как сделать

      После этого, появляется инструмент в виде пипетки. С помощью него можно выделить ту ячейку, формат которой вы собираетесь использовать.

      поиск по листам в excel как сделать

      После того, как формат поиска настроен, жмем на кнопку «OK».

      поиск по листам в excel как сделать

      Бывают случаи, когда нужно произвести поиск не по конкретному словосочетанию, а найти ячейки, в которых находятся поисковые слова в любом порядке, даже, если их разделяют другие слова и символы. Тогда данные слова нужно выделить с обеих сторон знаком «*». Теперь в поисковой выдаче будут отображены все ячейки, в которых находятся данные слова в любом порядке.

    3. Как только настройки поиска установлены, следует нажать на кнопку «Найти всё» или «Найти далее», чтобы перейти к поисковой выдаче.

    Как видим, программа Excel представляет собой довольно простой, но вместе с тем очень функциональный набор инструментов поиска. Для того, чтобы произвести простейший писк, достаточно вызвать поисковое окно, ввести в него запрос, и нажать на кнопку. Но, в то же время, существует возможность настройки индивидуального поиска с большим количеством различных параметров и дополнительных настроек.

    Мы рады, что смогли помочь Вам в решении проблемы.

    Задайте свой вопрос в комментариях, подробно расписав суть проблемы. Наши специалисты постараются ответить максимально быстро.

    Помогла ли вам эта статья?

    Да Нет

         Добрый день!

        Сегодня я хочу расширить границы использования функции ВПР и научить вас использовать эту функцию, что бы произвести поиск значений в Excel по нескольким листам вашего рабочего файла.

         Как вы знаете или еще не знаете, я напоминаю, в чистом виде функция ВПР производит поиск только в одной таблице, а о том, что бы чистыми возможностями функции произвести поиск необходимого значения в нескольких листиках, это невозможно. Но, тем не менее, при большой необходимости можно схитрить и произвести поиск по двум листам. Для этого используем возможности логической функции ЕСЛИ и формула поиска будет выглядеть приблизительно так:

             =ВПР (C3 ;ЕСЛИ (ЕНД (ВПР (C3 ;Таблица2!C3:D7 ;2; 0)); Таблица3! C3:D7 ;Таблица2! C3:D7 );2; 0).

         Но такой вариант работает только с 2 таблицами, а в случае, когда листов больше, нужно увеличивать количество вложений для функции ЕСЛИ. Но при этом:

    • во-первых, если много листов, то есть огромный шанс что длина формулы будет больше допустимого размера и перестанет работать;
    • во-вторых, это просто непрактично, так как при работе такой мега-формулы возникает значительно риск ошибок и при изменениях придётся переделывать формулу.

         Но, как всегда, выход есть. Рассмотрим небольшую хитрость с помощью, которой и будем искать в нужных листах. Начнем работу с создания перечня листов нашей книги, где будем производить поиск значений. В нашем случае это диапазон $E$3:$E$7.     Теперь для получения значения в столбик «Найденная стоимость» согласно условию в столбике «Номенклатуру которую ищем» нам нужна формула:

           {=ВПР (A3; ДВССЫЛ («’»&ИНДЕКС ($E$3:$E$7; ПОИСКПОЗ (ИСТИНА; СЧЁТЕСЛИ (ДВССЫЛ («’»&$E$3:$E$7  &»‘!C1:C50″) ;A3)> 0;0)) &»‘!C:D» );2;0)}

         Как видите, формула выделена фигурными скобками, это означает, что её необходимо вводить как формулу массива с помощью горячего сочетания клавиш Ctrl+Shift+Enter. Это самое главное условие правильной работы этой формулы в других случаях она не будет работать.      Формула объемная и требует объяснения принципа её работы.  Функция ДВССЫЛ необходима, что бы конвертировать текстовые отображения ссылок на листы нашей книги в действительные. Сам принцип работы функции ДВССЫЛ, я описывать не буду, рассмотрим только необходимую формулу для этапа нашего вычисления: СЧЁТЕСЛИ (ДВССЫЛ («’»&$E$3:$E$7 &»‘! C1:C50″); A3).

         Как следствие, при вычислении этого блока у нас формируется массив из некоторого количества значений, которые мы ищем, и которые повторяются на листах нашего списка, и имеет вид: СЧЁТЕСЛИ({2;0;0;0};A3). О работе функции СЧЁТЕСЛИ я писал отдельно и более подробно.

         Следующим рассматриваемым блоком нашей композиции будет формула: ПОИСКПОЗ (ИСТИНА; СЧЁТЕСЛИ (ДВССЫЛ («’»&$E$3:$E$7 &»‘! C1:C50″); A3)>0;0), которая и работает с указанным выше блоком такого вида: ПОИСКПОЗ (ИСТИНА; СЧЁТЕСЛИ ({2;0;0;0}; A3)>0;0). Вследствие чего мы узнаем, какую позицию занимает имя листа в нашем массиве списке листов $E$3:$E$7. Теперь же при помощи функции ИНДЕКС мы получаем название листа, и можем применить его имя в структуре функции ДВССЫЛ, а она передаст полученное значение уже далее функции ВПР. Пошагово это будет выглядеть так:

    1. =ВПР (A3; ДВССЫЛ («’»&ИНДЕКС ({«Таблица1″; « Таблица2»; « Таблица3»; «Таблица4»; «Таблица5»};1) &»‘! C:D»); 2;0);
    2. =ВПР(A2;ДВССЫЛ(«’Таблица1′! C:D»);2;0);
    3. =ВПР(A2;’Таблица1′!C:D;2;0).

         Ну, вот мы и получили универсальную формулу, которая производит поиск значений в Excel и является очень гибкой и удобной. В случаях, когда возникнет необходимость добавить в рабочую книгу еще листы с таблицами, то необходимо всего на всего прописать их в списке рабочих листов $E$3:$E$7, изменив предварительно ее размер или попросту изначально сделать ее динамическим диапазоном, и править формулу будет не нужно.

          Для большего удобства в столбике С, в графе «Где было найдено» можно прописать формулу которая будет наглядно показывать где была взята цифра, с какой таблицы вы получили значение, что значительно облегчает поисковую навигацию. Для получения названия таблицы необходима формула:

            {=ИНДЕКС ($E$3:$E$7; ПОИСКПОЗ (ИСТИНА; СЧЁТЕСЛИ (ДВССЫЛ («’»&$E$3 :$E$7&»‘! C1:C50″); A3) >0;0))}

    Поиск по нескольким листам с помощью макроса VBA

         Для тех, кто хочет производить поиск значений в Excel по своей рабочей книге с помощью макросов или просто сделать рутинную операцию более автоматической предлагаю воспользоваться прописанной функцией пользователя, которая будет искать необходимое значение во всех, без исключения, даже в скрытых, листах рабочей книги, в которую вы ее пропишете. Макрос был найден на сайте excel — vba.ru, который любит такие фишки.

         Функция будет иметь следующий вид:

    Function VLookUpAllSheets(vCriteria As Variant, rTable As Range, lColNum As Long, Optional iPart As Integer = 1) As Variant

        Dim rFndRng As Range

        If iPart <> 1 Then iPart = 2

        For i = 1 To Worksheets.Count

            If Sheets(i).Name <> Application.Caller.Parent.Name Then

                With Sheets(i)

                    Set rFndRng = .Range(rTable.Address).Resize(, 1).Find(vCriteria, , xlValues, iPart)

                    If Not rFndRng Is Nothing Then

                        VLookUpAllSheets = rFndRng.Offset(, lColNum — 1).Value

                        Exit For

                    End If

                End With

            End If

        Next i

    End Function

         Расшифруются аргументы написанной функции так:

    • rTable – прописывается таблица, как в обыкновенной функции ВПР, для поиска значений;
    • vCriteria – аргумент, который указывает любое текстовое значение или ссылка на ячейку, которая содержит значение для поиска;
    • lColNum – прописывается тот номер столбика из аргумента rTable, значение в котором нам необходимо изъять, возможно, использовать ссылку на столбик с помощью функции СТОЛБЕЦ;
    • iPart – аргумент, в котором прописываем необходимый метод просмотра. Когда аргумент не указан или указан аргумент равно 1, в таком случае будет проводиться поиск с полным совпадением значений в ячейках. В таких случаях есть возможность применить символы подстановки: «*» и «?». Если же, в аргументе указано другое значение кроме 1, функция будет искать, и отбирать значения при частичном вхождении.

          Я надеюсь, что поиск значений в Excel функцией ВПР по нескольким листам у вас получился, и вы могли быстро собрать нужные данные в ваших таблицах, а также научились создавать удобные и классные отчёты. Если у вас есть чем дополнить меня пишите комментарии, я буду их ждать с нетерпением, ставьте лайки и делитесь полезной статьей в соц.сетях!

          Не забудьте подкинуть автору на кофе…

    Основное назначение офисной программы Excel – осуществление расчётов. Документ этой программы (Книга) может содержать много листов с длинными таблицами, заполненными числами, текстом или формулами. Автоматизированный быстрый поиск позволяет найти в них необходимые ячейки.

    Простой поиск

    Чтобы произвести поиск значения в таблице Excel, необходимо на вкладке «Главная» открыть выпадающий список инструмента «Найти и заменить» и щёлкнуть пункт «Найти». Тот же эффект можно получить, используя сочетание клавиш Ctrl + F.

    В простейшем случае в появившемся окне «Найти и заменить» надо ввести искомое значение и щёлкнуть «Найти всё».

    Как видно, в нижней части диалогового окна появились результаты поиска. Найденные значения подчёркнуты красным в таблице. Если вместо «Найти все» щёлкнуть «Найти далее», то сначала будет произведён поиск первой ячейки с этим значением, а при повторном щелчке – второй.

    Аналогично производится поиск текста. В этом случае в строке поиска набирается искомый текст.

    Если данные или текст ищется не во всей экселевской таблице, то область поиска предварительно должна быть выделена.

    Расширенный поиск

    Предположим, что требуется найти все значения в диапазоне от 3000 до 3999. В этом случае в строке поиска следует набрать 3???. Подстановочный знак «?» заменяет собой любой другой.

    Анализируя результаты произведённого поиска, можно отметить, что, наряду с правильными 9 результатами, программа также выдала неожиданные, подчёркнутые красным. Они связаны с наличием в ячейке или формуле цифры 3.

    Можно удовольствоваться большинством полученных результатов, игнорируя неправильные. Но функция поиска в эксель 2010 способна работать гораздо точнее. Для этого предназначен инструмент «Параметры» в диалоговом окне.

    Щёлкнув «Параметры», пользователь получает возможность осуществлять расширенный поиск. Прежде всего, обратим внимание на пункт «Область поиска», в котором по умолчанию выставлено значение «Формулы».

    Это означает, что поиск производился, в том числе и в тех ячейках, где находится не значение, а формула. Наличие в них цифры 3 дало три неправильных результата. Если в качестве области поиска выбрать «Значения», то будет производиться только поиск данных и неправильные результаты, связанные с ячейками формул, исчезнут.

    Для того чтобы избавиться от единственного оставшегося неправильного результата на первой строчке, в окне расширенного поиска нужно выбрать пункт «Ячейка целиком». После этого результат поиска становимся точным на 100%.

    Такой результат можно было бы обеспечить, сразу выбрав пункт «Ячейка целиком» (даже оставив в «Области поиска» значение «Формулы»).

    Теперь обратимся к пункту «Искать».

    Если вместо установленного по умолчанию «На листе» выбрать значение «В книге», то нет необходимости находиться на листе искомых ячеек. На скриншоте видно, что пользователь инициировал поиск, находясь на пустом листе 2.

    Следующий пункт окна расширенного поиска – «Просматривать», имеющий два значения. По умолчанию установлено «по строкам», что означает последовательность сканирования ячеек по строкам. Выбор другого значения – «по столбцам», поменяет только направление поиска и последовательность выдачи результатов.

    При поиске в документах Microsoft Excel, можно использовать и другой подстановочный знак – «*». Если рассмотренный «?» означал любой символ, то «*» заменяет собой не один, а любое количество символов. Ниже представлен скриншот поиска по слову Louisiana.

    Иногда при поиске необходимо учитывать регистр символов. Если слово louisiana будет написано с маленькой буквы, то результаты поиска не изменятся. Но если в окне расширенного поиска выбрать «Учитывать регистр», то поиск окажется безуспешным. Программа станет считать слова Louisiana и louisiana разными, и, естественно, не найдёт первое из них.

    Разновидности поиска

    Поиск совпадений

    Иногда бывает необходимо обнаружить в таблице повторяющиеся значения. Чтобы произвести поиск совпадений, сначала нужно выделить диапазон поиска. Затем, на той же вкладке «Главная» в группе «Стили», открыть инструмент «Условное форматирование». Далее последовательно выбрать пункты «Правила выделения ячеек» и «Повторяющиеся значения».

    Результат представлен на скриншоте ниже.

    При необходимости пользователь может поменять цвет визуального отображения совпавших ячеек.

    Фильтрация

    Другая разновидность поиска – фильтрация. Предположим, что пользователь хочет в столбце B найти числовые значения в диапазоне от 3000 до 4000.

    1. Выделить первый столбец с заголовком.
    2. На той же вкладке «Главная» в разделе «Редактирование» открыть инструмент «Сортировка и фильтр», и щёлкнуть пункт «Фильтр».
    3. В верхней строчке столбца B появляется треугольник – условный знак списка. После его открытия в списке «Числовые фильтры» щёлкнуть пункт «между».
    4. В окне «Пользовательский автофильтр» следует ввести начальное и конечное значение плюс OK.

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

    Различные варианты поиска были рассмотрены на примере Excel 2010. Как сделать поиск в эксель других версий? Разница в переходе к фильтрации есть в версии 2003. В меню «Данные» следует последовательно выбрать команды «Фильтр», «Автофильтр», «Условие» и «Пользовательский автофильтр».

    Видео: Поиск в таблице Excel

    Хитрости »

    23 Август 2013              133866 просмотров


    ВПР с поиском по нескольким листам

    Скачать файл с исходными данными, используемый в видеоуроке:

      ВПР по всем листам (43,0 KiB, 24 297 скачиваний)


    Если необходимо найти какое-либо значение в большой таблице очень часто применяется функция ВПР. Но ВПР работает только с одной таблицей и нет никакой возможности средствами самой функции просмотреть искомое значение на нескольких листах. Если поиск необходимо осуществить только по двум листам, то можно схитрить:
    =ВПР(A2;ЕСЛИ(ЕНД(ВПР(A2;Лист2!A1:B10;2;0));Лист3!A1:B10;Лист2!A1:B10);2;0)
    начиная с версии Excel 2007 можно так же использовать функцию ЕСЛИОШИБКА(IFERROR):
    =ЕСЛИОШИБКА(ВПР(A2;Лист2!A1:B10;2;0);ВПР(A2;Лист3!A1:B10;2;0)
    подробнее преимущества функции ЕСЛИОШИБКА(IFERROR) разбирались в этой статье: Как в ячейке с формулой вместо ошибки показать 0

    А когда листов больше? Можно плодить ЕСЛИ(IF) и ЕСЛИОШИБКА(IFERROR). Но это во-первых совсем не наглядно и во-вторых очень непрактично, т.к. при добавлении или удалении листов придется править всю мега-формулу. Да и при работе с количеством листов более 10 есть большой шанс, что длина формулы выйдет за пределы допустимой.

    Есть небольшой прием, который поможет искать значение в указанных листах. Для начала необходимо создать на листе список листов книги, в которых искать значение. В приложенном к статье примере они записаны в диапазоне $E$2:$E$5.
    =ВПР(A2;ДВССЫЛ(«‘»&ИНДЕКС($E$2:$E$5;ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ(ДВССЫЛ(«‘»&$E$2:$E$5&»‘!A1:A50″);A2)>0;0))&»‘!A:B»);2;0)

    Формула вводится в ячейку как формула массива — т.е. сочетанием клавиш Ctrl+Shift+Enter. Это очень важное условие. Если формулу не вводить в ячейку как формулу массива, то необходимого результата не получить.
    Попробую кратенько описать принцип работы данной формулы.

    Перед чтением дальше советую скачать пример:

      ВПР по всем листам (43,0 KiB, 24 297 скачиваний)

    ДВССЫЛ нам нужна для преобразования текстового представления ссылок на листы в действительные. Подробно не буду останавливаться на принципе работы ДВССЫЛ, просто приведу этапы вычислений:

    СЧЁТЕСЛИ(ДВССЫЛ(«‘»&$E$2:$E$5&»‘!A1:A50»);A2)

     
    В результате вычисления данного блока у нас получается массив из количества повторений искомого значения на каждом из указанных листов:

    СЧЁТЕСЛИ({1;0;0;0};A2)

    . Поэтому следующий блок

    ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ(ДВССЫЛ(«‘»&$E$2:$E$5&»‘!A1:A50»);A2)>;0;0)

    работает именно с этим:

    ПОИСКПОЗ(ИСТИНА;СЧЁТЕСЛИ({1;0;0;0};A2)>0;0)

    Читать подробнее про СЧЁТЕСЛИ

    в результате чего мы получаем позицию имени листа в массиве имен листов $E$2:$E$5, с помощью ИНДЕКС получаем имя листа и подставляем это имя уже к ДВССЫЛ(INDIRECT), а она в ВПР:
    =ВПР(A2;ДВССЫЛ(«‘»&ИНДЕКС({«Астраханьоблгаз»:»Липецкоблгаз»:»Оренбургоблгаз»:»Ростовоблгаз»};1)&»‘!A:B»);2;0) =>
    =ВПР(A2;ДВССЫЛ(«‘Астраханьоблгаз’!A:B»);2;0) =>
    =ВПР(A2;’Лист2′!A:B;2;0)

    Что нам и требовалось. Теперь если в книгу будут добавлены еще листы, то необходимо будет всего лишь дописать их к диапазону $E$2:$E$5 и при необходимости этот диапазон расширить. Так же можно задать диапазон $E$2:$E$5 как динамический и тогда необходимость в правке формулы отпадет вовсе.

    Используемые в формуле величины:
    A2 — ссылка на ячейку с искомым значением. Т.е. указывается то значение, которое требуется найти на листах.

    $E$2:$E$5 — диапазон с именами листов, в которых требуется осуществлять поиск указанного значения (A2).

    Диапазон «‘!A1:A50» — это диапазон, в котором СЧЁТЕСЛИ ищет совпадения. Поэтому указывается только один столбец данных. При необходимости следует расширить или изменить. Можно указать так же «‘!A:A», но при этом следует учитывать, что указание целого столбца может привести к значительному увеличению времени выполнения функции. Поэтому имеет смысл просто задать диапазон с запасом, например «‘!A1:A10000».

    «‘!A:B» — диапазон для аргумента ВПР — Таблица. В первом столбце этого диапазона на каждом из указанных листов ищется указанное значение (A2). При нахождении возвращается значение из указанного столбца. Читать подробнее про ВПР>>

    В примере к статье так же можно посмотреть формулу, которая для каждого значения подставляет имя листа, в котором это значение было найдено.

    Скачать пример:

      ВПР по всем листам (43,0 KiB, 24 297 скачиваний)

    Так же можно искать по нескольким листам разных книг, а не только по нескольким листам одной книги. Для этого необходимо будет в списке листов вместе с именами листов добавить имена книг в квадратных скобках:[Книга1.xlsb]Май
    [Книга1.xlsb]Июнь
    [Книга2.xlsb]Май
    [Книга2.xlsb]Июнь
    Перечисленные книги обязательно должны быть открыты

    ВАЖНО! если в результате записи формулы получаете ошибку #ССЫЛКА!(#REF!), то скорее всего файл, из которого получаете данные, сохранен в формате xlsx(xlsm и т.п.), который содержит более 1млн. строк. А файл с формулой в раннем формате xls. Чтобы ошибки не было сохраните файл с формулой тоже в новом формате(Сохранить как — Книга Excel (.xlsx)), закройте и откройте заново. Формула должна заработать, если записана правильно.
    Либо укажите фиксированный диапазон для ВПР, с количеством строк не более 65536. Вместо «‘!A:B» должно получиться так: «‘!A1:B60000»


    Решил добавить простенькую функцию пользователя(UDF) для тех, кому проще «общаться» с VBA, чем с формулами. Функция ищет указанное значение во всех листах книги, в которой записана(даже в скрытых):

    Function VLookUpAllSheets(vCriteria As Variant, rTable As Range, lColNum As Long, Optional iPart As Integer = 1) As Variant
        Dim rFndRng As Range
        If iPart <> 1 Then iPart = 2
        For i = 1 To Worksheets.Count
            If Sheets(i).Name <> Application.Caller.Parent.Name Then
                With Sheets(i)
                    Set rFndRng = .Range(rTable.Address).Resize(, 1).Find(vCriteria, , xlValues, iPart)
                    If Not rFndRng Is Nothing Then
                        VLookUpAllSheets = rFndRng.Offset(, lColNum - 1).Value
                        Exit For
                    End If
                End With
            End If
        Next i
    End Function

    Функция попроще, чем ВПР — последний аргумент(интервальный_просмотр) выполняет несколько иные, чем в ВПР функции. Хотя полагаю немногие его используют в классическом варианте.
    rTable — указывается таблица для поиска значений(как в стандартной ВПР)
    vCriteria — указывается ссылка на ячейку или текстовое значение для поиска
    lColNum — указывается номер столбца в таблице rTable, значение из которого необходимо вернуть — может быть ссылкой на столбец — СТОЛБЕЦ().
    iPart — указывается метод просмотра. Если не указан, либо указана цифра 1, то поиск осуществляется по полному совпадению с ячейкой. Но в таком варианте допускается применение подстановочных символов * и ?. Если указано значение, отличное от 1, то совпадение будет отбираться по части вхождения. Если в vCriteria указать «при», то совпадением будет считаться и слово «прибыль»(первый буквы совпадают) и «неприятный»(в середине встречается «при»). Но в этом случае знаки * и ? будут восприниматься «как есть». Может пригодиться, если в искомом тексте присутствуют символы звездочки и вопросительного знака и надо найти совпадения, учитывая эти символы.

    Так же см.:
    Что такое формула массива
    Как найти значение в другой таблице или сила ВПР
    Как подсчитать количество повторений
    Динамические именованные диапазоны


    Статья помогла? Поделись ссылкой с друзьями!

      Плейлист   Видеоуроки


    Поиск по меткам

    

    Access
    apple watch
    Multex
    Power Query и Power BI
    VBA управление кодами
    Бесплатные надстройки
    Дата и время
    Записки
    ИП
    Надстройки
    Печать
    Политика Конфиденциальности
    Почта
    Программы
    Работа с приложениями
    Разработка приложений
    Росстат
    Тренинги и вебинары
    Финансовые
    Форматирование
    Функции Excel
    акции MulTEx
    ссылки
    статистика

    • Надстройки Excel
    • Поиск в Excel
    • Панель инструментов
    • Книги Excel
    • текстовые строки
    • Форма ввода

    Наверняка, вы сталкивались с ситуацией, когда необходимо производить поиск некоторого значения по всей книге Excel (искать частичное совпадение на всех листах активной книги)

    Штатными средствами Excel вывести поле для поиска на панель инструментов не удаётся, а вызывать каждый раз диалоговое окно нажатием комбинации клавиш Ctrl + F не всегда удобно.

    На помощь придёт эта надстройка — она формирует в строке меню Excel 2003 поле для поиска по всем листам:

    Достаточно ввести искомый текст, и нажать клавишу Enter, — и перед вами полный список всех подходящих ячеек со всех листов книги.

    Для перехода к найденной ячейке достаточно щелкнуть мышью на нужном результате — автоматически будет активирован нужный лист, и выделена искомая ячейка.

    Поместите эту надстройку в папку автозагрузки Excel — и это поле будет появляться при каждом запуске программы.

    Конечно, функциональность этой надстройки присутствует и в Excel, — если в настройках поиска выбрать опцию «Искать в книге»:

    Поиск по всем листам в Excel

    Моя же надстройка чуть упрощает работу — не надо нажимать лишние кнопки для типа Ctrl + F, и не надо выбирать область поиска.

    К тому же, при использовании надстройки, вы можете провести мышом (при нажатой левой кнопке) по результатам поиска, — и Excel пролистает (выделит) все найденные ячейки по очереди (во встроенном поиске Excel надо щелкать на каждом результате отдельно)

    (добавлено 29.07.2011)  Немного подправил код надстройки:

    • теперь форма с результатами закрывается по нажатию Esc
    • при отсутствии открытой книги не выводится пустая форма
    • панель инструментов не сбрасывается к настройкам «по-умолчанию» перед добавлением поля
    • 200788 просмотров

    Не получается применить макрос? Не удаётся изменить код под свои нужды?

    Оформите заказ у нас на сайте, не забыв прикрепить примеры файлов, и описать, что и как должно работать.

    Как быстро найти значение на нескольких листах или в книгах?

    Вы когда-нибудь задумывались о поиске определенного значения на нескольких листах или книгах в Excel? В этом руководстве представлены различные методы решения проблем, связанных с поиском на нескольких листах или поиском в нескольких книгах.

    Поиск значения на нескольких листах книги с помощью функции поиска и замены

    Искать значение во всех книгах папки с VBA

    Быстрый поиск значения в нескольких открытых книгах с помощью Kutools for Excel хорошая идея3


    С помощью Excel Найти и заменить функция, вы можете найти определенное значение на нескольких листах.

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

    значение поиска документа на нескольких листах 1

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

    значение поиска документа на нескольких листах 2



    Если вы хотите найти значение во всех закрытых книгах из папки, вы можете применить только VBA для его решения.

    1. Включите новую книгу и выберите ячейку, затем нажмите Alt + F11 ключи для открытия Microsoft Visual для базовых приложений окно.

    2. Нажмите Вставить > Модули и вставьте ниже 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 кнопку для выполнения этого VBA и Выберите папку Появится диалоговое окно, напоминающее вам о выборе папки, в которой вы хотите искать значение. Смотрите скриншот:

    значение поиска документа на нескольких листах 3

    4. Затем щелкните OK и другое диалоговое окно появляется, чтобы напомнить вам, сколько ячеек было найдено. Смотрите скриншот:

    значение поиска документа на нескольких листах 4

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

    значение поиска документа на нескольких листах 5

    Наконечник: В приведенном выше VBA вы ищете значение «КТЕ», и вы можете изменить «КТЕ» из этого xStrSearch = «КТЭ« на другое значение по мере необходимости.


    Если вы просто хотите найти значение в нескольких открытых книгах, вы можете использовать Kutools for Excel»продвинутый Найти и заменить утилита.

    После бесплатная установка Kutools for Excel, пожалуйста, сделайте следующее:

    1. В одной из открытых книг щелкните Кутулс > Навигация, а затем нажмите Найти и заменить кнопка кнопка поиска документов идти на Найти и заменить панель. Смотрите скриншот:

    значение поиска документа на нескольких листах 6

    2. Затем нажмите Найти вкладка и введите значение, которое вы хотите найти в Найти то, что текстовое поле, а затем выберите Все книги из В раскрывающийся список и нажмите Найти все чтобы перечислить все найденные ячейки. Смотрите скриншот:
    doc kutools найти заменить 2

    Наконечник:

    Работы С Нами Kutools for Excelпродвинутый Найти и заменить Утилита, вы можете искать и заменять значения на выбранных листах в нескольких книгах, во всех книгах, активной книге, активном листе или выборе.
    doc kutools найти заменить 3


    Относительные статьи:

    • Как быстро найти и заменить на нескольких листах или во всей книге?
    • Как быстро найти и заменить в нескольких открытых файлах Excel?
    • Как найти наибольшее отрицательное значение (меньше 0) в Excel?
    • Как извлечь все дубликаты из столбца в Excel?

    Лучшие инструменты для работы в офисе

    Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

    • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
    • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
    • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
    • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
    • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
    • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
    • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
    • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
    • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

    вкладка kte 201905


    Вкладка Office: интерфейс с вкладками в Office и упрощение работы

    • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
    • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
    • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

    офисный дно

    в данный момент у меня код модуля вот такой  

      Option Explicit  

      Sub Поиск()  
    Dim iFoundRng As Range  
    Dim iSheet As Worksheet  
    Dim iFoundSht As Worksheet  
    Dim FirstAddress As String  
    Dim TextToFind As Variant  
    Dim iLastRow As Long  
    Dim iShtName As String  

             Set iFoundSht = Sheets(«Поиск») ‘лист «Поиск» присваиваем переменной  
       iFoundSht.Range(«A5:AA5000»).Clear ‘очищаем диапазон ячеек на листе Поиск  
       ‘TextToFind = Application.InputBox(«Введите строку для поиска» & Chr(13) & Chr(13) & «Например: Lexus или Lexus 350», «Поиск», «Lexus 350»)  
       TextToFind = iFoundSht.Range(«B2»)  
       If TextToFind = «» Or TextToFind = False Then Exit Sub ‘если ничего не ввели — Выход!  
       TextToFind = Trim(TextToFind) ‘убираем начальные и конечные пробелы  
       Application.ScreenUpdating = False ‘отключаем обновление экрана  
       For Each iSheet In ThisWorkbook.Worksheets ‘поиск по листам  
           If iSheet.Name <> iFoundSht.Name Then  
               If iSheet.FilterMode = True Then iSheet.ShowAllData ‘если на листе установлен автофильтр, то снимаем его  
               Set iFoundRng = iSheet.Cells.Find(TextToFind, , xlFormulas, xlPart)  
               If Not iFoundRng Is Nothing Then ‘если нашли  
                   FirstAddress = iFoundRng.Address ‘запоминаем адрес найденной ячейки, чтобы продолжить поиск по листу  
                   Do  
                       With iFoundSht  
                           iLastRow = .Cells(.Rows.Count, 1).End(xlUp).Row ‘определяем последнюю заполненную строку на листе поиск  
                           If iLastRow = 1 Then iLastRow = 4 ‘если лист пуст, то вставлять будем начиная с 7-й строки  
                           If iShtName <> iSheet.Name Then ‘если новый прайс-лист  
                               With .Cells(iLastRow + 1, 1) ‘проставляем имя листа  
                                   .Value = «Лист: » & iSheet.Name & » Ячейка: » & iFoundRng.Address(0, 0)  
                                   ‘добавляем гиперссылку  
                                   iFoundSht.Hyperlinks.Add Anchor:=iFoundSht.Cells(iLastRow + 1, 1), Address:=»», _  
                                       SubAddress:=»‘» & iSheet.Name & «‘» & «!» & iFoundRng.Address, ScreenTip:=»Перейти на лист » & iSheet.Name  
                                   ‘.Font.Bold = True ‘выделяем жирным  
                               End With  
                           End If  
                           ‘iFoundRng.EntireRow.Copy Destination:=.Cells(.Cells(.Rows.Count, 1).End(xlUp).Row + 1, 1) ‘копируем всю строку  
                           iShtName = iSheet.Name ‘запоминаем имя листа  
                       End With  
                       Set iFoundRng = iSheet.Cells.FindNext(iFoundRng) ‘продолжаем поиск на том же листе  
                   Loop While iFoundRng.Address <> FirstAddress  
               End If  
           End If  
       Next iSheet  
       Application.ScreenUpdating = True ‘включаем обновление экрана  
       MsgBox «Поиск завершён!», 64, «Поиск»  
    End Sub  

      Sub Finder()  
    Dim iRng As Range, TextForFind As String, FirstAddress As String, n As Integer, iLastRow As Long  
    iLastRow = Cells(Rows.Count, 1).End(xlUp).Row  
    Range(Cells(5, 1), Cells(iLastRow + 1, 2)).Clear  
    iLastRow = 4  
       TextForFind = InputBox(«Введите искомое слово (значение)», » Запрос для поиска»)  
       If TextForFind = «» Then  
           MsgBox «Вы ничего не указали», 48, «Вы чё, в натуре?»  
           Exit Sub  
       End If  

         For n = 2 To Sheets.Count  
           With Sheets(n).UsedRange  
               Set iRng = .Find(What:=TextForFind, LookIn:=xlFormulas, LookAt:=xlPart)  
               If Not iRng Is Nothing Then  
                   FirstAddress = iRng.Address  
                   Do  
                       Cells(iLastRow + 1, 1) = Sheets(n).Name  
                       Cells(iLastRow + 1, 2) = iRng.Address(0, 0)  
                       iLastRow = iLastRow + 1  
                       Set iRng = .FindNext(iRng)  
                   Loop While iRng.Address <> FirstAddress  
               Else  
                   MsgBox «Значение » & TextForFind & » не найдено!», 48, «Ошибка»  
               End If  
           End With  
       Next  
    End Sub  

      по вашим словам я могу оставить только последнюю часть данного кода?

    Ответы с готовыми решениями:

    Как написать поиск по всем листам
    При нажатии на кнопку поиск пользователь вводит часть фразы или код,происходит поиск по всем листам…

    Поиск по нескольким листам в одной книге
    Есть задача создания поиска по нескольким листам одной книги. Нужно вводить номер телефона, и чтоб…

    Макрос Excel поиск по листам в книге с условием
    Макрос Excel поиск по листам в книге с условием что при наличии запроса на листе, из него будет…

    Поиск по всем листам
    В VB почти нечего не шарю…говорю сразу)
    Проблема: нужно сделать поиск ячейки в определенном…

    Like this post? Please share to your friends:
  • Excel поиск по всей книге формула
  • Excel поиск по базе данных если есть то
  • Excel поиск переноса строки в ячейке
  • Excel поиск переноса строк
  • Excel поиск перенос строки