Всем здравствуйте "! Все данные конфиденциальны , не могу приложить пример. Сразу к делу...
Есть макрос , который поочередно открывает файлы excl из указанной папки , берет из них информацию ( ВЫДЕЛЕНО КРАСНЫМ) и записывает к себе на лист. Вот часть макроса :
Код
' перебираем все найденные в папке файлы
For Each Filename In coll
' обновляем информацию на прогресс-баре
pi.SubAction "Обрабатывается файл $index из $count", "Файл: " & Dir(Filename), "$time"
pi.Log "Файл: " & Dir(Filename)
' открываем очередной файл в режиме «только чтение»
Set WB = Nothing: Set WB = Workbooks.Open(Filename, False, True)
If WB Is Nothing Then ' не удалось открыть файл
pi.Log vbTab & "ОШИБКА при загрузке файла. Файл не обработан."
Else ' файл успешно открыт
Set sh = WB.Worksheets(1) ' будем брать данные с первого листа
' берем ячейку B2
Set ra = Range("B2")
' ==== переносим данные в наш файл (shd - кодовое имя листа, куда помещаем данные)
shd.Range("a" & shd.Rows.Count).End(xlUp).Offset(1).Resize(ra.Rows.Count, ra.Columns.Count).Value = ra.Value
' ==== конец обработки данных из очередного файла
WB.Close False: DoEvents ' закрываем обработанный файл без сохранения изменений
pi.Log vbTab & "Файл успешно обработан."
End If
Next
' закрываем прогресс-бар, включаем обновление экрана
pi.Hide: DoEvents: Application.ScreenUpdating = True
MsgBox "Обработка заявок завершена", vbInformation
End Sub
Sub ClearTable()
On Error Resume Next: shd.UsedRange.Offset(2).ClearContents
End Sub
Вопрос. В файлах, в столбце А есть примерно 120 строк. Как сделать , что бы он сначала находил слово ( ШТРИХКОРД ) - в столбце А , затем копировал ячейку из столбца С ( напротив где нашел слово штрихкод ) !
' ==== переносим данные в наш файл (shd - кодовое имя листа, куда помещаем данные)
shd.Range("a" & shd.Rows.Count).End(xlUp).Offset(1).Resize(ra.Rows.Count, ra.Columns.Count).Value = ra.Value
Это сделано. Мне главное что бы он копировал ячейку из столбца С напротив слова (ШТРИХКОД) в столбце А
НЕ РЕКОМЕНДУЕТСЯ: 4.1. Создавать одинаковые темы или сообщения в разных форумах (cross-posting). Публикуя один и тот же вопрос в разных форумах и на дружественных сайтах вы заставляете сразу нескольких людей параллельно думать над вашей задачей и обесцениваете усилия тех, кто даст ответ вторым-третьим и т.д.
Цитата
Где мне задавать - это мое дело... Учить VBA мне нет времени - мне нужна помощь
И Вам при этом совсем наплевать на время других. Как же - нужно! А вы тут напрягайтесь...
Прошу разместить ссылки на ресурсы, где есть обсуждение Вашей темы. А пока что на форуме, который Вы боитесь рекламировать, вариант своего решения удалил.