Вызов команды:
MulTEx -группа Ячейки/Диапазоны -Поиск по всем книгам


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

Поиск по всем книгам

Найти: - указывается значение для поиска. Может быть любым символом или словом. Если в текущем сеансе Excel было введено для поиска более одного значения, то поле будет выпадающим списком, из которого можно выбрать любое из ранее искомых значений или ввести новое. Небольшая особенность - при указании пустого значения в поле "Найти:" и выполнения поиска появится предупреждение:
Запрос
Если нажать Да, то будут выведены адреса первых пустых ячеек на листе/листах/книгах в зависимости от указанного в поле Искать значения.

Заменить: указывается значение, на которое необходимо заменить найденную строку. По умолчанию данное поле скрыто и появляется только если перейти на вкладку Замена. Кнопки Найти и Найти все будут заменены на Заменить и Заменить все. Однако на данный момент функции обеих кнопок идентичны и замена возможна только всех значений сразу.

Примечание: при произведении замены по Гиперссылкам не допускается применение подстановочных символов(звездочка и вопросительный знак). Для всех остальных значений Области поиска их применение допускается и корректно обрабатывается.

Искать:

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

Просматривать:

    • по строкам - поиск ведется слева-направо сверху-вниз - т.е. сначала просматривается каждая ячейка строки, а потом осуществляется переход на следующую строку;
    • по столбцам - поиск ведется сверху-вниз слева-направо - сначала просматривается каждая ячейка столбца, а потом осуществляется переход на следующий столбец.

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

Область поиска:

  • формулы - поиск будет осуществляться по действительному содержимому ячейки(то, которое отображается в строке формул при активации ячейки), а не по отображаемому значению;
  • значения - поиск будет осуществляться отображаемому содержимому ячейки;
  • примечания - поиск осуществляется исключительно в тексте примечаний в ячейках;
  • гиперссылки - поиск/замена осуществляется исключительно в тексте гиперссылок, созданных через меню(Правая кнопка мыши на ячейке-Гиперссылка). >>Читать подробнее про гиперссылки

Везде(по умолчанию) - поиск будет осуществляться по всему листу.

Только выделенный диапазон - поиск будет осуществляться по выделенному диапазону. Диапазон задается один для всех листов, исходя из выделенного на активном листе диапазона.

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

Найти далее - будет активироваться каждое найденное значение по кругу.

Выделить все - будут выделены все ячейки с найденными значениями на всех листах всех книг. Если в списке Искать выбрано на листе - будут выделены значения только на активном листе; если выбрано в книге - то на всех листах книги; если во всех книгах - значения будут выделены на всех листах всех открытых книг. Стандартно Excel не позволяет сделать такое. Для чего это может быть нужно: если необходимо проделать какое-либо однотипное действие(удалить все данных, изменить заливку, шрифт и т.п.) в найденных ячейках.

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

 

Также см.:
Как заменить/удалить/найти звездочку?
Как определить последнюю ячейку на листе через VBA?
Как получить последнюю заполненную ячейку формулой?
Как найти значение в другой таблице или сила ВПР

Loading

2 комментария

  1. Здравствуйте!
    Скачал вашу надстройку из-за поиска по всем книгам. Но по команде "Найти все" результаты поиска не выводятся в поле.

    1. Юрий, сложно сказать в чем причина.
      После нажатия "Найти все" - происходит хоть что-то? Например, сообщение "Совпадений не найдено"? Если да - то проверьте настройки поиска в форме. Возможно, искать надо не по значениям, а по формулам или искать на всем листе, а не в выделенном диапазоне и т.п.
      Если сообщения не появляется - убедиться, что поиск завершился и форма откликается на дальнейшие действия. Так же проверить в MulTex -Сохранять настройки форм -Настройка уведомлений, что установлено показывать окно ошибок(потому что вполне возможно возникает какая-то ошибка, но параметра выставлено не показывать ошибку и не отправлять).

Добавить комментарий

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.