|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
||||||
Макрос поиска и вывода строк, содержащих значение поиска16.03.2012, 11:24. Показов 65247. Ответов 101
Метки нет (Все метки)
Здравствуйте!
Есть макрос для поиска значения из ячейки А1 по всему листу и копированием строк из всех листов, содержащих это значение. Но есть и проблема: макрос поиска ищет только цифровые значения из указанной ячейки. Текстовые или смешанные не находит. Если знаете как подправить, помогите плз!!! Вот код:
0
|
||||||
| 16.03.2012, 11:24 | |
|
Ответы с готовыми решениями:
101
Макрос поиска вводимого значение и вывода всей строки разработать консольное приложение для ввода с клавиатуры массива строк и поиска среди них строк, содержащих заданный строковый фрагмент. Вывод количества строк в файлах, содержащих заданные строки поиска |
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 02.12.2013, 14:26 [ТС] | |
|
Вы же видите, что этот макрос - плод коллекивного творчества форума
Написали общими усилиями год назад - все работало я убрал сейчас R - и все работает ) Напомнило, как друзья перебирали мотор в Гелинвагене. После переборки остался целый тазик болтиков, кронштейнов, релешек, и т.п. Гелен с тех пор ездеет уже 2 год без всяких проблем. все гениальное должно быть просто!
0
|
|
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 02.12.2013, 14:47 | |
|
Вполне может быть, что эта R публичная, Integer, и используется где-то позже в другом макросе - Вы ведь не показываете файл и всю задачу.
Ну а если она не нужна - то конечно она не нужна ![]() А то что "Вы же видите" - да ничего я не вижу
0
|
|
|
0 / 0 / 0
Регистрация: 10.08.2015
Сообщений: 1
|
|
| 11.08.2015, 11:54 | |
|
Здравствуйте! Нужна помощь Есть база в которой всего один лист,в нескольких столбцах два значения по функции =ЕСЛИ(P1>640;"Снять";"Начислить") на каждый месяц свое условие то есть на следующий месяц столбец уже будет выглядеть так =ЕСЛИ(P6>1640;"Снять";"Начислить") Нужна функция в которой есть поле "что искать" где указываем значение "Снять" или "Начислить"и поле где вводим название книги например "снятие с начисления" Итог нужно найти данные "Снять" и скопировать строки с ними в отдельную книгу "снятие с начисления" Вроде типа найти в выделенном столбце все данные соответствующие "Снять" и выделить строки где есть эти данные, или скопировать их в другую книгу, ну или если проще то на другой лист.В базе 70 тыс. строк в данный момент все делается вручную так как обычный поиск не выделяет строки.
База образец.xls На оплату.xls Снять с начисления.xls
0
|
|
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
||||||
| 08.09.2015, 13:01 [ТС] | ||||||
|
Здравствуйте,
перестал работать поиск.
в чем ошибка?
0
|
||||||
|
Модератор
|
||
| 08.09.2015, 13:12 | ||
надо знать значения всех переменных il,j,kl и просмотреть значение данной ячейки оно должно быть менее 2 000 0000 000
0
|
||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 08.09.2015, 13:45 [ТС] | |
|
: iL : "block" : Variant/String
: j : 186 : Variant/Long : KL : 6 : Variant/Double стопариться, как я понял, на Листе "Блок". Поиск по 6му столбцу. На листе около 500 позиций. 2 млн. точно не превышается Добавлено через 7 минут 186 строка: 3E1214A00246. Формат текстовый. Добавлено через 14 минут вобщем, глюк именно тут... в номере 3E1214A00246..... Эксель воспринимает как экспоненциональный формат, раскладывает число и ищет совпадение? Пробывал помимо текст.формата ставить ещё и апостроф, и пробелы ... не помогает...
0
|
|
|
Модератор
|
|
| 08.09.2015, 13:59 | |
|
val --это перевод в число
3E1214A00246 много более 2 000 000 000 вот и переполнение
1
|
|
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 08.09.2015, 15:17 [ТС] | |
|
Спасибо, понял.
Чем-нибудь можно заменить VAL? А почему '3E1214A00246 в ячейке с форматом "текст" переводится в число? Апостроф же является как бы символом запрета на перевод в число и жесткой фиксацией "текста"...
0
|
|
|
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
|
|||
| 09.09.2015, 00:08 | |||
|
1
|
|||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 09.09.2015, 11:02 [ТС] | |
|
Спасибо вам обоим!
r убрал в этом поиске, в других оставил, т.к. там действительно необходимо.
0
|
|
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|||||||||||
| 09.03.2016, 23:43 [ТС] | |||||||||||
|
Здравствуйте,
подскажите, пожалуйста, как в данный макрос добавить поиск по 2-м значениям?
Например есть 1. болт ААА - 5 шт 2. Болт АААА - 10 шт 3. гайка ААА - 5 шт 4. гайка АААА - 10 шт поиск артикула ААА дает много лишнего также как и поиск наименование "болт" Вот надо, чтобы сразу вводили болт ААА и поиск выдавал на всех листах полные строчки с совпадением. Заранее спасибо!
0
|
|||||||||||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
||||||
| 11.03.2016, 18:48 [ТС] | ||||||
|
помогите,пожалуйста, собрать воедино и заставить работать следующие идеи:
1. добавляем второй критерий: ar1 = CStr(Range("s1")) 2. добавляем где искать второй агрумент KL1 = Cells(i, 33) (надо ли под второй агрумент указывать диапозон имен листов как под первый критерий?) 3. меняем условие на совпадение по 1му и 2му агрументу If CStr(Sheets(iL).Cells(j, KL)) Like ar And CStr(Sheets(iL).Cells(j, KL1)) Like ar1 Then (вот тут ваще не понятно, сделал на обум, вроде строчку не высвечивает) в итоге выходит ран-тайм еррор 1004 application-defined or object-defined error
0
|
||||||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
||||||
| 24.08.2016, 16:26 [ТС] | ||||||
|
Здравствуйте,
можно ли в данном макросе обойтись как-нибудь без "Application.Calculation = xlAutomatic"? Книга большая, пересчет занимает много времени и, соответственно, вывод результатов поиска растягивается на долго. Есть альтернатива?
0
|
||||||
|
6998 / 2896 / 555
Регистрация: 19.10.2012
Сообщений: 8,804
|
|
| 24.08.2016, 16:54 | |
|
Да макросу пофиг есть там промежуточный пересчёт или нет. А вот что там за задача - это Вы должны знать, нужно ли там промежуточно пересчитывать.
0
|
|
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
||||||
| 24.08.2016, 17:17 [ТС] | ||||||
|
промежуточно пересчитывать не нужно, макрос ищет совпадающие значения в на листах в соответствующих столбцах, которые указаны в таблице и заданы условием
0
|
||||||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 25.08.2016, 16:01 [ТС] | |
|
отключил пересчет, изменил 28 и 29 строку - не ищет вобще.
включил, как было в начале, пересчет и изменил 28,29 строки - ищет быстрее, но выводит результаты без заливки. Это не совсем подходит, т.к. у меня на даблклик в зависимости от цвета записаны процедуры (переход на др.лист к позиции). Другими словами, без пересчета не получилось.
0
|
|
|
|
||||||
| 25.08.2016, 16:41 | ||||||
1
|
||||||
|
12 / 12 / 4
Регистрация: 16.03.2012
Сообщений: 252
|
|
| 25.08.2016, 17:46 [ТС] | |
|
Спасибо большое!
Существенно быстрее: с 40-60 с до 12-15с!
0
|
|
|
0 / 0 / 0
Регистрация: 27.02.2018
Сообщений: 1
|
|
| 27.02.2018, 11:16 | |
|
Всем привет, подскажите пожалуйста, а можно макросом решить следующую задачку.
У меня два разных файла. В одном у меня битые url адреса с кодом ответа сервера 404 и их много. А во втором файле у меня полный масив этих url адресов, часть нормальные, а часть соответственно битые с кодом 404. Проблема в том, что битые url адреса не полностью совпадают текстом с общим массивом, так как url адреса в общем массиве содержат еще дополнительную разметку для аналитики. Если бы они полностью совпадали я бы использовал обычную формулу ВПР, но тут у меня совпадение только части текста и у меня не получается из-за этого найти битые ссылки с кодом 404 в общем массиве. Может подскажет кто, как быть ?
0
|
|
| 27.02.2018, 11:16 | |
|
Макрос для поиска заполненных строк в таблице и переноса их в другую книгу Запрет вывода строк содержащих значение #Ошибка Как составить рег.выражение для поиска строк, содержащих только буквы, цифры, точки, и подчеркивания Как доработать макрос для копирования строк из файлов, содержащих определенное значение Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Запустил конкурс "тем и промптов для текстовых квестов созданных почти чисто ИИ"
Adler 06.10.2026
Всем привет!
За последние три-четыре дня я создал более 16 текстовых квестовых игр используя преимущественно по одному запросу к ИИ на игру. Мне так понравилось смотреть все ветки/ сцены во всех. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами:
- ВидТО (СправочникСсылка. ВидыТО);
- ВидГСМ. . .
|
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала.
Ниже прикреплён. . .
|