Макрос поиска и вставки
Макрос из тхт файла берётся информация - код и цифра.
Необходимо найти код в файле совпадающий с кодом из тхт и вставить цифру в правый столбик.
Не могу придумать алгоритм поиска.
При ненахождении кода в столбике надо будет вставить пустую строку после того кода который до неизвестного и в эту строку вписать код и цифру.
Есть файл xls самая левая колонка в котором код (символьное). Справа идут цифры.
Макрос из тхт файла берётся информация - код и цифра.
Необходимо найти код в файле совпадающий с кодом из тхт и вставить цифру в правый столбик.
Не могу придумать алгоритм поиска.
При ненахождении кода в столбике надо будет вставить пустую строку после того кода который до неизвестного и в эту строку вписать код и цифру.
Насколько я понял, коды, которые надо искать. берутся из текстовика. Тогда делаешь так (в общих чертах):
1. Пишешь процедуру, которая будет:
а). Открывать файл на чтение. Для этого удобнее всего воспользоваться библиотекой scrrun.dll (Microsoft Scripting Runtime). Из неё тебе понадобятся объекты File - файл, TextStream - поток данных из файла, FileSystemObject - объект FSO, который является родителем для File и TextStream. Объхявляешь ссылки на объекты, указываешь путь к файлу, открываешь его, читаешь (можно в текстовую переменную), закрываешь. (см. "Как получить список ODBC?").
б). Возвращать содержимое файла.
2. При помощи этой процедуры читаешь всё из интересующего файла, а затем бегаешь в цикле по возвращённому значению и выщемляешь код и цифру.
3. Как выщемил новый код, бегаешь по ячёйкам Excel и ищешь его. Как находишь - пишешь в нужную ячейку цифру.
Ну и т.д.
Все примеры можно найти в этой конфе в разных разделах (посмотри похожее в "Помогите написать поцедуру").
с уважением,
М.Шатуров.
Вот что у меня родилось. Макрос в приложенном файле. Комментарии (небольшие) присуствуют. Коды имеют сортировку по возрастанию. Поругайте и предложите лучший вариант.