Всем здравствуйте "! Все данные конфиденциальны , не могу приложить при мер. Сразу к делу...
Есть макрос , который поочередно открывает файлы excl из указанной папки , берет из них информацию и записывает к себе на лист. Вот часть макроса : [vba]
Код
' перебираем все найденные в папке файлы 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
[/vba]
Вопрос.
В файлах, в столбце А есть примерно 120 строк. Как сделать , что бы он сначала находил слово ( ШТРИХКОРД ) - в столбце А , затем копировал ячейку из столбца С ( напротив где нашел слово штрихкод ) ! <= Все это вместо Range ("B2")
Всем здравствуйте "! Все данные конфиденциальны , не могу приложить при мер. Сразу к делу...
Есть макрос , который поочередно открывает файлы excl из указанной папки , берет из них информацию и записывает к себе на лист. Вот часть макроса : [vba]
Код
' перебираем все найденные в папке файлы 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
[/vba]
Вопрос.
В файлах, в столбце А есть примерно 120 строк. Как сделать , что бы он сначала находил слово ( ШТРИХКОРД ) - в столбце А , затем копировал ячейку из столбца С ( напротив где нашел слово штрихкод ) ! <= Все это вместо Range ("B2")Olegas
Сообщение отредактировал Olegas - Суббота, 13.02.2016, 16:23
Olegas, вы кого наколоть пытаетесь? Это что? - кросс - нарушение правил и этого форума тыц, и того. А люди всё равно одни и те же. Хотите помощи - ведите себя по правилам, вам никто ничем не обязан
Olegas, вы кого наколоть пытаетесь? Это что? - кросс - нарушение правил и этого форума тыц, и того. А люди всё равно одни и те же. Хотите помощи - ведите себя по правилам, вам никто ничем не обязанbuchlotnik
Сообщение отредактировал buchlotnik - Суббота, 13.02.2016, 17:02
берет из них информацию и записывает к себе на лист
На какой лист? На ActiveSheet или ещё куда? По какому правилу берёт? Всё подряд или как? Какую информацию? Куда записывает? Куда попало? Последовательно? В те же ячейки? Ничего не понял.
Цитата
берет из них информацию и записывает к себе на лист
На какой лист? На ActiveSheet или ещё куда? По какому правилу берёт? Всё подряд или как? Какую информацию? Куда записывает? Куда попало? Последовательно? В те же ячейки? Ничего не понял.StoTisteg
Интуитивно понятный код - это когда интуитивно понятно, что это код.
На какой лист? На ActiveSheet или ещё куда? По какому правилу берёт? Всё подряд или как? Какую информацию? Куда записывает? Куда попало? Последовательно? В те же ячейки? Ничего не понял.
удалено администрацией [moder]Нарушение п. 5.s и 5.о Правил форума[/moder][moder]И переназовите тему согласно п. 2 Правил форума
На какой лист? На ActiveSheet или ещё куда? По какому правилу берёт? Всё подряд или как? Какую информацию? Куда записывает? Куда попало? Последовательно? В те же ячейки? Ничего не понял.
удалено администрацией [moder]Нарушение п. 5.s и 5.о Правил форума[/moder][moder]И переназовите тему согласно п. 2 Правил форумаOlegas
Сообщение отредактировал _Boroda_ - Суббота, 13.02.2016, 17:17
Спасибо, коллега, но на "сделай за меня мою работу и я расскажу тебе, какой ты дурак" я не ведусь. Если всё так страшно секретно, берите пример с меня — учитесь у макрорекордера кнопки F1. А почему Вы вдруг сумеете объяснить в Скайпе то, что не можете публично, мне не понять. [moder]Полностью поддерживаю.
Спасибо, коллега, но на "сделай за меня мою работу и я расскажу тебе, какой ты дурак" я не ведусь. Если всё так страшно секретно, берите пример с меня — учитесь у макрорекордера кнопки F1. А почему Вы вдруг сумеете объяснить в Скайпе то, что не можете публично, мне не понять. [moder]Полностью поддерживаю.StoTisteg
Интуитивно понятный код - это когда интуитивно понятно, что это код.
Сообщение отредактировал _Boroda_ - Суббота, 13.02.2016, 17:15