Страницы: 1
RSS
Поиск № заказа макросом
 
Добрый день. Имеется пример, с помощью которого производится выборка и вставка значений из выбранной папки по всем файлам, содержащимся в папке. Как реализовать на этом же примере поиск по номеру заказа, и следовательно выборку и вставку значений только из этого файла. Более подробно описано в примере.
 
Проверяйте переменную file на наличие своего номера.
Изменено: Hugo - 19.11.2015 09:58:34
 
Вот это и не могу понять как сделать.
 
Код
If Left(file,4)="5256" Then
 
не помогло, виснет.
 
Я не знаю что у Вас там не выходит. Но прошлый год я делал для развлечения программку по поиску файлов. Может поможет и вам.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
спасибо, хороший поиск, но мне еще вычленять значения надо макросом.
Изменено: alexdes - 19.11.2015 13:05:32
 
Скрытый текст

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
выборку значений не делает, т.е. макрос вроде как выполнился, а результата в ячейках нет.
 
Ну значит нет таких файлов.
 
Или в этих файлах значения пустые. Проверяйте куда ссылаются Ваши диапазоны.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Спасибо, буду дальше разбираться.
 
Запустите макрос в пошаговом режиме и посмотрите, выполняется ли условие
Код
If Left(file, 4) = ActiveSheet.Range("A2").Value Then
 
Первым делом глянуть глазом что там за файлы.
Если похожи - то посмотреть нет ли впереди пробелов, учесть в коде (например навесить trim).
Ну и может быть нужно навесить и на Range("A2") - мало ли что там...
Изменено: Hugo - 19.11.2015 14:46:35
 
проверил в пошаговом, работает, но не может походу найти файл, хотя файл в папке есть, и имя корректное. Искомый файл всегда сначала содержит 4 цыфры, затем пробел и текст. Получается данные из A2 не может найти в имени файла.(
Изменено: alexdes - 19.11.2015 15:03:26
 
alexdes, имя файла сюда скиньте. (я создал файл с указанным в примере именем, где вначале шло "5256" - макрос его нашёл)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
вот этот файл "5256" ищем и из него вытаскиваем значения в пример. Не грузятся.
Изменено: alexdes - 19.11.2015 15:18:48
 
Код
If Left(file, 4) = CStr(ActiveSheet.Range("A2").Value) Then
Замените 16ю строку.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Если я в файле "пример" в A2 буду искать например 5257, то при его нахождении макрос должен его добавить за уже имеющимся 5256. (т.е. при каждом удачном поиске - добавлять строчку и вставлять значения)
Изменено: alexdes - 19.11.2015 15:58:38
 
Скрытый текст

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Вернуть забыли
Код
Application.ScreenUpdating = True
 
Kuzmich, так оно же автоматом возвращается. Потому специально не возвращал. :)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Всё работает, всем большое спасибо.  :)
 
Возможно в этот пример добавить, чтобы поиск был в папке с подкаталогами, а не в указанной папке?
 
вба поиск файлов в папке с подкаталогами

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Много уже всего прочитал и излазил, но без вашей помощи не разобраться мне .
Изменено: alexdes - 23.11.2015 14:48:02
 
Пример. Список файлов в каталоге с вложенными каталогами. Комментировать не буду, т.к. собирал сам всё из сети и форума, на что и Вы способны, если потрудитесь. Файл - переделка другого файла, потому могут быть лишние переменные и макросы. Макрос jjj.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
Страницы: 1
Наверх