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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.06.2011, 13:28   #1
androids
Новичок
Джуниор
 
Регистрация: 17.06.2011
Сообщений: 2
По умолчанию Импорт данных

Всем привет! Имеется файл csv в котором прописано: наименование, артикул, цена, количество, описание, ссылка на данный товар... И имеется прайс лист, из которого необходимо найти по артикулю количество товара и цену и внести эти данные в файл csv. Номенклатура около 5000 позиций, как реализовать? Данную операцию необходимо будет производить несколько раз в день.
androids вне форума Ответить с цитированием
Старый 17.06.2011, 14:08   #2
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

ВПР()
Но я бы переписал один текстовый файл в другой...

Т.к. задача без примера, поэтому голый алгоритм, как делал бы я (на словаре и массивах).
Предположим (так должно быть), что артикулы уникальны.
Тогда из массива исходных данных одним перебором можно в словарь набрать артикулы, в итем взять позицию в массиве.
Потом перебором построчно текстового файла извлекаем из словаря позицию, из массива данные и формируем новую строку в другом текстовом файле.
В итоге старый csv стираем/бекапим, новый переименовываем. Или даже сразу после прочтения в массив старый csv убиваем, на его место пишем новый.
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 17.06.2011 в 14:20.
Hugo121 вне форума Ответить с цитированием
Старый 17.06.2011, 15:01   #3
androids
Новичок
Джуниор
 
Регистрация: 17.06.2011
Сообщений: 2
По умолчанию

В сsv-ке содержится куча разных ссылок, описаний и т.д., главное чтоб они не слетели, а то при импорте в программу получится абракадабра. Возможно ли сделать это типа каким-нибудь макрасом, нажал и готово?
androids вне форума Ответить с цитированием
Старый 17.06.2011, 15:09   #4
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

csv - это обычный текстовый файл, и его можно обработать обычным скриптом.
Но без примера что тут воду толочь...
webmoney: E265281470651 Z422237915069 R418926282008
Hugo121 вне форума Ответить с цитированием
Старый 19.06.2011, 13:54   #5
Hugo121
Старожил
 
Регистрация: 11.05.2010
Сообщений: 5,166
По умолчанию

Набросал код на своём примере - файлы положить в "c:\Temp\CSVEdit\", запускать только RunMe.vbs.
Естественно, пути в коде можно поменять на свои.
Сделал, как описал в первом посте.
Есть небольшая тонкость в операторах Write и Writeline - первый пишет строку без перевода строки, второй с переводом. Если исходный csv не имеет в конце пустой строки, то в результате эта строка появится. Чтоб пофиксить, нужно добавить ещё одно условие - проверку переменной i, и если уже конец файла - писать с помощью Write.
Так же сейчас предусмотрено, что в конце строк в Sample.csv нет ";", но возможно, что в Вашем файле они есть - это тоже нужно смотреть по месту.
Вложения
Тип файла: zip CSVEdit.zip (4.8 Кб, 11 просмотров)
webmoney: E265281470651 Z422237915069 R418926282008

Последний раз редактировалось Hugo121; 19.06.2011 в 14:21.
Hugo121 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Импорт данных VBA Lyubov1990 Microsoft Office Excel 5 05.06.2009 15:22
импорт данных Рокабіллі_Птах БД в Delphi 1 13.05.2008 18:49
Продвинутый импорт данных npsb Microsoft Office Access 0 28.02.2008 14:38
Импорт внешних данных asale Microsoft Office Excel 1 15.04.2007 00:41
Импорт данных Таня84 БД в Delphi 4 17.02.2007 20:43