Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Работа с гиперссылками на архивные файлы - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Работа с гиперссылками на архивные файлы
dimok-69 Дата: Четверг, 05.06.2014, 18:05 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Доброго дня всем
Есть таблица в одном из столбцов которой ссылка на определенный архивный файл, внутри архива находятся 2 файлика с расширением *.jpg. Как с помощью макроса распаковать архив по указанному в таблице пути и открыть оба файла приложением для ПРОСМОТРА изображений, а по закрытию просмотрщика удалить временные файлы изображений? Фрагмент таблицы прилагаю
 
Ответить
СообщениеДоброго дня всем
Есть таблица в одном из столбцов которой ссылка на определенный архивный файл, внутри архива находятся 2 файлика с расширением *.jpg. Как с помощью макроса распаковать архив по указанному в таблице пути и открыть оба файла приложением для ПРОСМОТРА изображений, а по закрытию просмотрщика удалить временные файлы изображений? Фрагмент таблицы прилагаю

Автор - dimok-69
Дата добавления - 05.06.2014 в 18:05
dimok-69 Дата: Четверг, 05.06.2014, 18:06 | Сообщение № 2
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Вот фрагмент таблички
К сообщению приложен файл: 0016680.xls (19.5 Kb)
 
Ответить
СообщениеВот фрагмент таблички

Автор - dimok-69
Дата добавления - 05.06.2014 в 18:06
anvg Дата: Пятница, 06.06.2014, 09:33 | Сообщение № 3
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Доброе время суток.
Как вариант на двойной щелчок мышью. В код модуля листа
[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
[/vba]
P. S. Файлы не удаляет, правда.

Автор - anvg
Дата добавления - 06.06.2014 в 09:33
dimok-69 Дата: Пятница, 06.06.2014, 12:15 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибо огромное за помощь, протестирую!!! hands
 
Ответить
СообщениеСпасибо огромное за помощь, протестирую!!! hands

Автор - dimok-69
Дата добавления - 06.06.2014 в 12:15
dimok-69 Дата: Пятница, 06.06.2014, 15:29 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
При выполнении макроса пишет ошибку см. вложение. Я просто не силен в VBA. Помогите плз.
К сообщению приложен файл: 5814543.jpg (33.3 Kb)
 
Ответить
СообщениеПри выполнении макроса пишет ошибку см. вложение. Я просто не силен в VBA. Помогите плз.

Автор - dimok-69
Дата добавления - 06.06.2014 в 15:29
anvg Дата: Пятница, 06.06.2014, 15:32 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 581
Репутация: 271 ±
Замечаний: 0% ±

2016, 365
Приношу свои извинения. Забыл указать
В редакторе VBA в меню Tools/References включите библиотеку Microsoft Shell And Automation
 
Ответить
СообщениеПриношу свои извинения. Забыл указать
В редакторе VBA в меню Tools/References включите библиотеку Microsoft Shell And Automation

Автор - anvg
Дата добавления - 06.06.2014 в 15:32
dimok-69 Дата: Пятница, 06.06.2014, 15:56 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Спасибки огромное. А как можно сделать, чтобы при открытии этой книги или листа все файлы *.jpg из папки куда они разархивируются удалялись по маске *.jpg?
 
Ответить
СообщениеСпасибки огромное. А как можно сделать, чтобы при открытии этой книги или листа все файлы *.jpg из папки куда они разархивируются удалялись по маске *.jpg?

Автор - dimok-69
Дата добавления - 06.06.2014 в 15:56
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!