Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2012, 10:04   #1
Questru
Почемучка-новичок
Пользователь
 
Регистрация: 08.10.2010
Сообщений: 67
По умолчанию Поиск данных - макрос (VBA)

Добрый день.
Замарочился с написание макроса.
Но не знаю как подступиться.
И так: Во вложении файл, на примере которого я попытаюсь объяснить чего я хочу.
Файл содежит три вкладки.
1. "Prim" - примеры состава семьи, в дальнейшем ее не будет она только для облегчения полета мысли
2. "Fam" - из этого листа будем брать данные
3. "List" - список разных составов семьи.
И так:
макрос должен делать следующие действия:
1. Начинаем работу на вкладке "List"
2. Смотрим первую строку "папа,мама,сын1,тесть"
3. Сравнение списка со значениями на листе "Fam", если есть совпадения значений, то выставляем "1" в первой колонке, иначе переходим на следующую строку.
Значение символов в строке.
"," = "и", то есть через "," перечислены значения, которые должны быть 100% на вкладке Fam
"/" = "или", то есть на вкладке "Fam", должно быть что-то одно, для выставления "1".
Ну а самое интересное на закуску.
Значения в строке не известны ни на той ни на другой вкладке, то есть необходимо вычленять в строке и потом их искать на вкладке "Fam" для анализа
Вложения
Тип файла: zip For question.zip (7.5 Кб, 10 просмотров)
Questru вне форума Ответить с цитированием
Старый 13.12.2012, 10:51   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Я думаю можно применить такой алгоритм:
1. Заполняем словарь вариантами семей fam.
Если порядок членов может быть произвольным, то сперва массив сортируем, затем собираем строку и в словарь.
Если с порядком всегда порядок - то можно не сортировать.
2. Перебираем в цикле list, каждый список преобразуем в аналогичные строки (сортируя или нет), ищем в словаре. Всё.
Нужно подумать, как технически преобразовать ИЛИ в варианты строк - в случае "мама/папа,тесть/теща" должно ведь получиться 4 строки для сравнения.
Но решаемо, я когда-то делал подобное. Но сейчас не помню, как...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выгрузка данных из Excel в XML (vba макрос?) allaire Microsoft Office Excel 1 04.05.2012 14:40
Выгрузка данных из Excel в XML (vba макрос?) allaire Microsoft Office Excel 2 04.05.2012 09:52
Макрос VBA Donix Microsoft Office Word 4 08.04.2011 11:01
макрос VBA salvafion Фриланс 1 05.09.2009 18:06
МАКРОС!ПОИСК ДАННЫХ. HELP! jungo Microsoft Office Excel 8 02.04.2008 10:50