Страница 1 из 2
Распаковка файлов
Добавлено: 06 окт 2008, 13:48
angej
У меня єсть файлы упакованые архиватором arj, которые я потом обрабатываю макросом, и хотелось что б сам макрос сначала делал их распаковку. Может кто знает как в макросе прописать распаковку?
Re: Распаковка файлов
Добавлено: 06 окт 2008, 14:54
VictorM
архиватором arj, чем же еще?
кстати ,если у Вас стоит Тотал коммандер, в нем сейчас встроены все архиваторы.
Достаточно найти в меню опцию "Файл - Распаковать"
Re: Распаковка файлов
Добавлено: 06 окт 2008, 16:50
angej
Тотал есть, но у меня много файлов заархивированых которых я потом обрабатываю макросом, и хотелось чтоб сам макрос сначала их распаковывал

Re: Распаковка файлов
Добавлено: 06 окт 2008, 17:33
VictorM
angej писал(а):Тотал есть, но у меня много файлов заархивированых которых я потом обрабатываю макросом, и хотелось чтоб сам макрос сначала их распаковывал
неправильно поставленная задача, предполагает неправильное ее решение!
Смотрите Ваш 1-й пост, о макросах ни слова.
Re: Распаковка файлов
Добавлено: 06 окт 2008, 23:06
Serge_Bliznykov
angej, посмотрите на решение от Павла
Как создать архив файла с помощью VBA?
правда, там не распаковка, а запаковка, и не arj.exe, а WinRar.exe - но смысла это не меняет...
Pavel писал(а):Центральная часть всего макроса в этих кодах
Код: Выделить всё
iFileName$ = iPath$ + iFileName$
WinRarApp$ = "C:\Program Files\WinRAR\WinRAR.exe a -ep -df "
Adr = WinRarApp$ & " """ & iFileNameRar$ & """ """ & iFileName$ & """ "
RetVal = Shell(Adr, vbHide)
Re: Распаковка файлов
Добавлено: 08 окт 2008, 00:23
Pavel55
Ну, если arj похож на rar, то вот пример разархивирования архива RAR
Разархивируем архив C:\Temp\Test 5.rar
Код:
Код: Выделить всё
Sub UnRar()
'Разархивируем архив C:\Temp\Test 5.rar
WinRarApp$ = "C:\Program Files\WinRAR\WinRAR.exe e -o+"
' e - разархивировать
' -o+ - перезаписывать существующие файлы
iPath = "C:\Temp\"
iArhivName$ = "Test 5.rar"
'добавляем двойные кавычки, что позволит нам работать с именем файла и путём, которые содержат пробелы.
'без кавычек пробелы недопустимы
adr$ = WinRarApp$ & " """ & iPath & iArhivName$ & """ """ & iPath & """ "
RetVal = Shell(adr$, vbHide) 'vbNormalFocus)
End Sub
P.S. Кстати, тот
Pavel с форума bit.pirit.info и я - одно и тоже лицо )
У меня обычно на всех форумах ник
Pavel55, а на Bit'e просто
Pavel ) я там модератор )
Re: Распаковка файлов
Добавлено: 08 окт 2008, 21:57
Serge_Bliznykov
" писал(а):Кстати, тот Pavel с форума bit.pirit.info и я - одно и тоже лицо )
Дык, а то кто бы сомневался?!! :-D я вообще, если где вижу на форуме про Excel умное сообщение (обычно с кодом макроса VBA) от Pavel — то практически уверен, что это "тот самый бывший учитель информатики, а теперь просто
Учитель -
Павел 55" :-)
Re: Распаковка файлов
Добавлено: 10 окт 2008, 17:19
Pavel55
Re: Распаковка файлов
Добавлено: 17 июн 2009, 11:31
Nataliya
Скажите, пожалуйста, как распаковать все файлы по указанной дериктории при этом поменяв им название?
У меня есть куча заархивированных вин раром файлов
название архива меня вполне устраивает, а вот внутри каждого архива лежит одинаково названный файл для всех архивов
цель: быстро их всех разархивировать, причем чтоб назывались они именем названия архивов (иначе все перемешаются, поскольку внутри каждого файлы с одинаковым именем, как я уже писала)
Re: Распаковка файлов
Добавлено: 17 июн 2009, 16:16
Aent
Последовательно распаковывать во временный каталог и перемещать в основной с переименованием в цикле по файлам