Доброго дня всем Есть таблица в одном из столбцов которой ссылка на определенный архивный файл, внутри архива находятся 2 файлика с расширением *.jpg. Как с помощью макроса распаковать архив по указанному в таблице пути и открыть оба файла приложением для ПРОСМОТРА изображений, а по закрытию просмотрщика удалить временные файлы изображений? Фрагмент таблицы прилагаю
Доброго дня всем Есть таблица в одном из столбцов которой ссылка на определенный архивный файл, внутри архива находятся 2 файлика с расширением *.jpg. Как с помощью макроса распаковать архив по указанному в таблице пути и открыть оба файла приложением для ПРОСМОТРА изображений, а по закрытию просмотрщика удалить временные файлы изображений? Фрагмент таблицы прилагаюdimok-69
Доброе время суток. Как вариант на двойной щелчок мышью. В код модуля листа [vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim pShell As New Shell32.Shell, pItem As Shell32.FolderItem Dim pZip As Shell32.Folder3, pItems As Shell32.FolderItems3 Dim pViewer As Object If Application.WorksheetFunction.IsText(Target.Value) Then If StrComp(".zip", Mid$(Target.Value, Len(Target.Value) - 3, 4), vbTextCompare) = 0 Then Set pZip = pShell.Namespace(Target.Value) Set pItems = pZip.Items pItems.Filter &H40, "*.jpg" Set pViewer = CreateObject("WScript.Shell") For Each pItem In pItems pViewer.Run pItem.Path Next Cancel = True End If End If End Sub
[/vba] P. S. Файлы не удаляет, правда.
Доброе время суток. Как вариант на двойной щелчок мышью. В код модуля листа [vba]
Код
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim pShell As New Shell32.Shell, pItem As Shell32.FolderItem Dim pZip As Shell32.Folder3, pItems As Shell32.FolderItems3 Dim pViewer As Object If Application.WorksheetFunction.IsText(Target.Value) Then If StrComp(".zip", Mid$(Target.Value, Len(Target.Value) - 3, 4), vbTextCompare) = 0 Then Set pZip = pShell.Namespace(Target.Value) Set pItems = pZip.Items pItems.Filter &H40, "*.jpg" Set pViewer = CreateObject("WScript.Shell") For Each pItem In pItems pViewer.Run pItem.Path Next Cancel = True End If End If End Sub
Спасибки огромное. А как можно сделать, чтобы при открытии этой книги или листа все файлы *.jpg из папки куда они разархивируются удалялись по маске *.jpg?
Спасибки огромное. А как можно сделать, чтобы при открытии этой книги или листа все файлы *.jpg из папки куда они разархивируются удалялись по маске *.jpg?dimok-69