|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу. Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста". Название темы слишком короткое или не отражает сути вашего вопроса. Тема исчерпала себя, помните, один вопрос - одна тема Прочитайте правила и заново правильно создайте тему. |
|
Опции темы | Поиск в этой теме |
10.12.2007, 17:51 | #1 |
Форумчанин
Регистрация: 12.11.2007
Сообщений: 209
|
Найти похожее название
Добрый день!
Есть два файла . В одном-база база данных, а другой -заявка Baza (данных) это: Колонка А- одиннадцатизначный код колонка С- наимен.товара и чертеж 11000000034 ...... Prokladka dizelja 11D40 45.567.sb. Zajavka - это : колонка В- код (если он есть, но иногда его нет) колонка D- наимен.товара и чертеж , причем название товара может быть написано не так как в базе ,например ( DIZ. prokladka М62 ) да и чертеж может быть расписан (11D 40. 45/567 сб) ............. ..... DIZ. prokladka М62 11D 40. 45/567 сб Список заявок состоит из одной или нескольких позиций(строк) и каждая заявка отделена пустой строкой Надо поставить в Zajavke в тех строках, где нет кода - код из "Baza" Т.е. Отмечаем строку в Zajavke , где нет кода , запускаем макрос и он в форме показывает примерные совпадения названий, которые он выберет из базы с кодами . В форме выбираем название какое нам подходит, даем команду "написать" и она добавит код Как это сделать? |
11.12.2007, 04:56 | #2 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Не могли бы Вы уточнить: по каким совпадениям в названии необходимо искать "похожие" ("примерные")? По всем словам?
Чем шире угол зрения, тем он тупее.
|
11.12.2007, 05:35 | #3 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
И еще вопрос-предложение.
В целях упрощения задачи и ускорения выполнения данной процедуры, может устроит так: 1) Создать два элемента управления "кнопка", одну в файле "Baza", другую в "Zajavka" (или, например, назначить комбинацию клавиш для запуска макроса). 2) Отмечаем строку в Zajavke , где нет кода , запускаем макрос (жмем кнопку). 3) В результате отобразится файл "Baza" со скрытыми "непохожими" строками. 4) Отмечаем строку в Baze , которую считаем нужной, запускаем макрос (жмем кнопку). Все. UserForm создавать не нужно.
Чем шире угол зрения, тем он тупее.
|
11.12.2007, 11:56 | #4 |
Форумчанин
Регистрация: 12.11.2007
Сообщений: 209
|
Вот файл "zajavka "Но вот в некоторых заявках нет САП-кода и по-этому потом после прихода из фирмы на склад,
приходится вручную сравнивать с названиями и чертежами находить и присваивать код |
11.12.2007, 12:29 | #5 |
Форумчанин
Регистрация: 12.11.2007
Сообщений: 209
|
Вот файл "Baza"
SAS888 ! Ваше предложение очень интересное и тем более что Вы предлогаете упростить это решение. Спасибо огромное А отбор надо сделать по слову или по группе цифр . Название может быть поменяно местами (краска фасадная 35.00,346/3 или "краска фасад.35.346.3 " или "фасадная краска 35.346.03 или просто "краска 35.346.003 " .Наверно пусть ищет из названия по четкому совпадению из названия , как здесь например "краска" и по числу из чертежа " 343" и оставит те наименования у которых есть ка можно больше совпадений |
11.12.2007, 14:00 | #6 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Значит так:
Условие: оба файла открыты (если нужно, то можно это и проверять) Файл "Zajavki firm.xls" должен содержать модуль с кодом: Код:
Файл "Baza dannih SAP.xls" должен содержать модуль с кодом: Код:
Как запускать макрос - дело вкуса.
Чем шире угол зрения, тем он тупее.
|
12.12.2007, 12:07 | #7 |
Форумчанин
Регистрация: 12.11.2007
Сообщений: 209
|
SAS 888
С П А С И Б О О Г Р О М Н О Е Работает все как надо Подскажите, пожалуйста а если База и Заявки находятся в одном файле ? И подскажите, как сделать - если после просмотра отобранных названий мне они не подходят, когда я активизирую Заявки, автоматически анхайдилось в Базе ? |
12.12.2007, 12:49 | #8 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
1) Если База и Заявки находятся в одном файле, например, пусть лист с Базой имеет имя "Baza", а лист с заявками имеет имя "Zajavka", тогда из макроса "SelectObj()" нужно удалить строку 8 (Windows("Baza dannih SAP.xls").Activate ), а строку 9 изменить на Sheets("Baza").Select т. е. выбрать нужный лист в нужной книге (подставьте Ваши имена).
В макросе "InsertNum()" строку 7 (Windows("Zajavki firm.xls").Activate), заменить на Sheets("Zajavka").Select 2) Ни одно предложенное название не подходит. Нужно выделить любую ячейку под таблицей (т. е. ячейку в строке у которой в первом столбце пусто), и запустить макрос "InsertNum()". 3) Что нужно делать автоматически я что-то не понял. Прошу по точнее.
Чем шире угол зрения, тем он тупее.
|
12.12.2007, 13:13 | #9 |
Старожил
Регистрация: 05.12.2007
Сообщений: 4,180
|
Еще, мне кажется, Вам может оказаться полезным следующее:
Например, ищем "похожие" слова для строки "AAA BBB CCC 16 mm". Строк, содержащих "mm" найдется очень много. Предлагаю создать исключения для поиска. Например, пусть нужно найти все "похожие" строки, но не сравнивая их по словам "mm" и "-" (тире). Тогда в макросе "SelectObj()" фрагмент Код:
Код:
Чем шире угол зрения, тем он тупее.
|
12.12.2007, 15:32 | #10 |
Форумчанин
Регистрация: 12.11.2007
Сообщений: 209
|
Сделал в одном файле но че-то отбор не хочет идти
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Название окна приложения | King Nothing | Win Api | 8 | 27.01.2009 17:11 |
Как изменить название темы? | veter_s_morya | О форуме и сайтах клуба | 1 | 24.06.2008 09:17 |
макросом дополнить название | Romuald | Microsoft Office Excel | 2 | 22.05.2008 17:31 |
название для кода | Romuald | Microsoft Office Excel | 2 | 25.03.2008 09:52 |