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

Вход

Регистрация

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

 

= Мир MS Excel/Как достать файл из xlam - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Как достать файл из xlam
bvg7 Дата: Четверг, 28.12.2017, 16:46 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Друзья, такая проблема возникла:
В xlam внедрено несколько файлов. Если xlam переименовать в zip, то видно, что они находятся в папке customUI\images\
Для каждого файла в xml прописан id.
Вопрос: как программно достать нужный файл и поместить в ячейку активного листа, если это текстовый файл, или поместить на листе картинку, если это графический файл, или добавить листы, если это xls-файл?
Ничего подобного я не нашел. Помогите пожалуйста.
 
Ответить
СообщениеДрузья, такая проблема возникла:
В xlam внедрено несколько файлов. Если xlam переименовать в zip, то видно, что они находятся в папке customUI\images\
Для каждого файла в xml прописан id.
Вопрос: как программно достать нужный файл и поместить в ячейку активного листа, если это текстовый файл, или поместить на листе картинку, если это графический файл, или добавить листы, если это xls-файл?
Ничего подобного я не нашел. Помогите пожалуйста.

Автор - bvg7
Дата добавления - 28.12.2017 в 16:46
wild_pig Дата: Четверг, 28.12.2017, 19:33 | Сообщение № 2
Группа: Проверенные
Ранг: Обитатель
Сообщений: 518
Репутация: 97 ±
Замечаний: 0% ±

2003, 2013
Пройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.
Был бы файл.
 
Ответить
СообщениеПройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.
Был бы файл.

Автор - wild_pig
Дата добавления - 28.12.2017 в 19:33
bvg7 Дата: Пятница, 29.12.2017, 12:01 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Пройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.

Не совсем понятно мне, ведь эти файлы не помещались на листы. Или при внедрении файлов в xlam они размещаются на листах? Так устроено в excell?
Можете привести пример кода?
 
Ответить
Сообщение
Пройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.

Не совсем понятно мне, ведь эти файлы не помещались на листы. Или при внедрении файлов в xlam они размещаются на листах? Так устроено в excell?
Можете привести пример кода?

Автор - bvg7
Дата добавления - 29.12.2017 в 12:01
RAN Дата: Пятница, 29.12.2017, 13:22 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщениеhttp://novikov.gq/products/ribbonxmleditor/ribbonxmleditor.html

Автор - RAN
Дата добавления - 29.12.2017 в 13:22
bvg7 Дата: Пятница, 29.12.2017, 13:31 | Сообщение № 5
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
RAN, вкладку на ленте и кнопку в этой вкладке я, как раз, с помощью этой программы и сделал.
 
Ответить
СообщениеRAN, вкладку на ленте и кнопку в этой вкладке я, как раз, с помощью этой программы и сделал.

Автор - bvg7
Дата добавления - 29.12.2017 в 13:31
bvg7 Дата: Пятница, 29.12.2017, 14:07 | Сообщение № 6
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Пройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.

Попробовал, как Вы сказали:
Цитата
Dim s As String
s = ""
For Each obj In ThisWorkbook.Sheets
If obj.Type = xlWorksheet Then
Dim sh As Worksheet: Set sh = obj
Else
GoTo Next1
End If
For Each lo In sh.ListObjects
Dim o As ListObject: Set o = lo
s = s & sh.Name & " -- " & "; " & o.Name
Next
Next1:
Next
MsgBox s

Никаких объектов не обнаружено.
 
Ответить
Сообщение
Пройтись по листам, а в них по всем объектам и, если картинка то что-то с ней сделать.

Попробовал, как Вы сказали:
Цитата
Dim s As String
s = ""
For Each obj In ThisWorkbook.Sheets
If obj.Type = xlWorksheet Then
Dim sh As Worksheet: Set sh = obj
Else
GoTo Next1
End If
For Each lo In sh.ListObjects
Dim o As ListObject: Set o = lo
s = s & sh.Name & " -- " & "; " & o.Name
Next
Next1:
Next
MsgBox s

Никаких объектов не обнаружено.

Автор - bvg7
Дата добавления - 29.12.2017 в 14:07
doober Дата: Пятница, 29.12.2017, 16:54 | Сообщение № 7
Группа: Друзья
Ранг: Ветеран
Сообщений: 995
Репутация: 345 ±
Замечаний: 0% ±

Excel 2010
Ничего подобного я не нашел.
Вы пошли не верной дорогой.
Создайте в надстройке лист,назовите его файлы.Через вставить объект внедрите в лист любые файлы.
Только после этого получите доступ к внедренным файлам.
Для чтения этих файлов понадобится бубен шамана.




Сообщение отредактировал doober - Пятница, 29.12.2017, 16:55
 
Ответить
Сообщение
Ничего подобного я не нашел.
Вы пошли не верной дорогой.
Создайте в надстройке лист,назовите его файлы.Через вставить объект внедрите в лист любые файлы.
Только после этого получите доступ к внедренным файлам.
Для чтения этих файлов понадобится бубен шамана.

Автор - doober
Дата добавления - 29.12.2017 в 16:54
bvg7 Дата: Пятница, 29.12.2017, 18:01 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 5
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Вы пошли не верной дорогой.

И тогда их можно будет найти в ListObjects?
 
Ответить
Сообщение
Вы пошли не верной дорогой.

И тогда их можно будет найти в ListObjects?

Автор - bvg7
Дата добавления - 29.12.2017 в 18:01
Pelena Дата: Пятница, 29.12.2017, 18:49 | Сообщение № 9
Группа: Админы
Ранг: Местный житель
Сообщений: 19603
Репутация: 4660 ±
Замечаний: ±

Excel 365 & Mac Excel
bvg7, код следует оформлять тегами с помощью кнопки # в режиме правки поста, а не цитатой, как у Вас. Исправьте.

Объект ListObject - это диапазон, отформатированный как Таблица (Данные -- Таблица). Видимо, поэтому
Никаких объектов не обнаружено


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
Сообщениеbvg7, код следует оформлять тегами с помощью кнопки # в режиме правки поста, а не цитатой, как у Вас. Исправьте.

Объект ListObject - это диапазон, отформатированный как Таблица (Данные -- Таблица). Видимо, поэтому
Никаких объектов не обнаружено

Автор - Pelena
Дата добавления - 29.12.2017 в 18:49
doober Дата: Пятница, 29.12.2017, 20:35 | Сообщение № 10
Группа: Друзья
Ранг: Ветеран
Сообщений: 995
Репутация: 345 ±
Замечаний: 0% ±

Excel 2010
Практически бубен подсказал, как документ ворда найти.[vba]
Код
Private Sub Works()
    Dim shsp As Shape
    For Each shsp In ActiveSheet.Shapes
        If shsp.Type = msoEmbeddedOLEObject Then
            Set OLE = shsp.OLEFormat.Object
            If OLE.progID = "Word.Document.12" Then
                Set WD = OLE.Object 'Получили документ Word
            End If
        End If
    Next
End Sub
[/vba]


 
Ответить
СообщениеПрактически бубен подсказал, как документ ворда найти.[vba]
Код
Private Sub Works()
    Dim shsp As Shape
    For Each shsp In ActiveSheet.Shapes
        If shsp.Type = msoEmbeddedOLEObject Then
            Set OLE = shsp.OLEFormat.Object
            If OLE.progID = "Word.Document.12" Then
                Set WD = OLE.Object 'Получили документ Word
            End If
        End If
    Next
End Sub
[/vba]

Автор - doober
Дата добавления - 29.12.2017 в 20:35
  • Страница 1 из 1
  • 1
Поиск:

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