Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/поиск значения по неполному совпадению - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по VBA » поиск значения по неполному совпадению (Макросы/Sub)
поиск значения по неполному совпадению
ovechkin1973 Дата: Воскресенье, 10.12.2017, 21:00 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 429
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Всем привет! с помощью макрорекодера и инета написал код, для ускорения поиска данных с одного листа на другом. Т.е. я выделяю кликом мышки ячейку с нужным данными и запускаю макрос - он мне находит на другом листе в определенном макросом столбце это значение. Есть одна проблема, которую совершенно не знаю как решить. В листе с которого беру данные, чтобы найти их на втором листе эти данные текстовые разной длины. Очень много значений в ячейках, которые заканчиваются на .........GE и три цифры на конце. Для примера 3AAA00GE100. Дак вот - очень хотелось бы, при выделении ячейки для запуска макроса поиска с таким (или аналогичным) значением в значение переменной, которую я потом вставляю в автофильтр не попадал последний символ.. т.е. вставлялось 3AAA00GE10? (потому как последняя цифра на листе, котором я ищу данные может отличаться от нуля)
Код прилагаю



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

Сообщение отредактировал ovechkin1973 - Воскресенье, 10.12.2017, 21:03
 
Ответить
СообщениеВсем привет! с помощью макрорекодера и инета написал код, для ускорения поиска данных с одного листа на другом. Т.е. я выделяю кликом мышки ячейку с нужным данными и запускаю макрос - он мне находит на другом листе в определенном макросом столбце это значение. Есть одна проблема, которую совершенно не знаю как решить. В листе с которого беру данные, чтобы найти их на втором листе эти данные текстовые разной длины. Очень много значений в ячейках, которые заканчиваются на .........GE и три цифры на конце. Для примера 3AAA00GE100. Дак вот - очень хотелось бы, при выделении ячейки для запуска макроса поиска с таким (или аналогичным) значением в значение переменной, которую я потом вставляю в автофильтр не попадал последний символ.. т.е. вставлялось 3AAA00GE10? (потому как последняя цифра на листе, котором я ищу данные может отличаться от нуля)
Код прилагаю


Автор - ovechkin1973
Дата добавления - 10.12.2017 в 21:00
Karataev Дата: Воскресенье, 10.12.2017, 21:05 | Сообщение № 2
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
 
Ответить
Сообщение

Автор - Karataev
Дата добавления - 10.12.2017 в 21:05
ovechkin1973 Дата: Воскресенье, 10.12.2017, 21:22 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 429
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Уважаемый Karataev, прошу прощения -не полностью задачу пояснил. Новую строку, что вы добавили я понял. Но в моем случае автофильтр срабатывает и я ничего не нахожу. Я начал проверять на листе, котором данные ищу и обнаружил, что фильтр срабатывает на "равно", а хотелось бы на "содержит".
И еще - вариант из переменной убирать одно значение в конце не подходить. У меня есть данные, где значение не имеют на конце GE??? - как сделать проверку? Т.е. если заканчивается значение ячейки на GE????, то тогда только убирать в конце один символ и запускать фильтр по "содержит". Если не заканчивается на GE???, то тогда ничего в конце убирать не надо при копировании


Плохо когда не знаешь, да еще забудешь. Правильно сформулированный вопрос содержит половину ответа.
 
Ответить
СообщениеУважаемый Karataev, прошу прощения -не полностью задачу пояснил. Новую строку, что вы добавили я понял. Но в моем случае автофильтр срабатывает и я ничего не нахожу. Я начал проверять на листе, котором данные ищу и обнаружил, что фильтр срабатывает на "равно", а хотелось бы на "содержит".
И еще - вариант из переменной убирать одно значение в конце не подходить. У меня есть данные, где значение не имеют на конце GE??? - как сделать проверку? Т.е. если заканчивается значение ячейки на GE????, то тогда только убирать в конце один символ и запускать фильтр по "содержит". Если не заканчивается на GE???, то тогда ничего в конце убирать не надо при копировании

Автор - ovechkin1973
Дата добавления - 10.12.2017 в 21:22
Karataev Дата: Воскресенье, 10.12.2017, 21:32 | Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

Excel
 
Ответить
Сообщение

Автор - Karataev
Дата добавления - 10.12.2017 в 21:32
ovechkin1973 Дата: Воскресенье, 10.12.2017, 21:40 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 429
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Karataev, Спасибо! То, что доктор прописал! А можно поподробнее, про последнюю строку кода.
Код
ActiveSheet.Range("$A$1:$L$113333").AutoFilter Field:=6, _
        Criteria1:="=*" & ЗначениеАктивнойЯчейки & "*"

Что именно в ней позволяет искать по "содержит"? и где можно почерпнуть информацию о способах в VBA указывать критерии работы фильтра? Если конечно у Вас есть такая информация.


Плохо когда не знаешь, да еще забудешь. Правильно сформулированный вопрос содержит половину ответа.
 
Ответить
СообщениеKarataev, Спасибо! То, что доктор прописал! А можно поподробнее, про последнюю строку кода.
Код
ActiveSheet.Range("$A$1:$L$113333").AutoFilter Field:=6, _
        Criteria1:="=*" & ЗначениеАктивнойЯчейки & "*"

Что именно в ней позволяет искать по "содержит"? и где можно почерпнуть информацию о способах в VBA указывать критерии работы фильтра? Если конечно у Вас есть такая информация.

Автор - ovechkin1973
Дата добавления - 10.12.2017 в 21:40
Karataev Дата: Воскресенье, 10.12.2017, 21:44 | Сообщение № 6
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация: 533 ±
Замечаний: 0% ±

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

PS. В посте 5 Вы использовали для оформления не тот тег (Вы использовали тег для формул).


Сообщение отредактировал Karataev - Воскресенье, 10.12.2017, 21:46
 
Ответить
СообщениеЯ взял критерий с помощью макрорекордера и изменил полученный код, вставив в него переменную.
Звездочка в данном случае означает "отсутствие символов" или "любое количество любых символов".

PS. В посте 5 Вы использовали для оформления не тот тег (Вы использовали тег для формул).

Автор - Karataev
Дата добавления - 10.12.2017 в 21:44
ovechkin1973 Дата: Воскресенье, 10.12.2017, 21:47 | Сообщение № 7
Группа: Проверенные
Ранг: Обитатель
Сообщений: 429
Репутация: 1 ±
Замечаний: 0% ±

Excel 2010
Karataev, Еще раз большое человеческое спасибо!


Плохо когда не знаешь, да еще забудешь. Правильно сформулированный вопрос содержит половину ответа.
 
Ответить
СообщениеKarataev, Еще раз большое человеческое спасибо!

Автор - ovechkin1973
Дата добавления - 10.12.2017 в 21:47
Мир MS Excel » Вопросы и решения » Вопросы по VBA » поиск значения по неполному совпадению (Макросы/Sub)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!