Форум программистов
 
Контакты: о проблемах с регистрацией, почтой и по другим вопросам пишите сюда - alarforum@yandex.ru, проверяйте папку спам! Обязательно пройдите активизацию e-mail.

Вернуться   Форум программистов > Microsoft Office и VBA > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Ответ
 
Опции темы
Старый 26.02.2014, 07:07   #11
jorevo
Новичок
 
Регистрация: 26.02.2014
Сообщений: 1
Репутация: 10
По умолчанию

Цитата:
Сообщение от Казанский Посмотреть сообщение
Код:

            .ChartArea.Width = sh.Width
            .ChartArea.Height = sh.Height

Ругается на это 400-ой ошибкой... типа форма уже создана что ли... И да - вот ещё какой момент не понятен. В текущей реализации картинки сохраняются в том размере, в котором они масштабированы в ексель файле. Есть какая то возможность вытянуть их в оригинальном размере?
jorevo вне форума   Ответить с цитированием
Старый 26.02.2014, 09:20   #12
EducatedFool
Программист VBA
СуперМодератор
 
Аватар для EducatedFool
 
Регистрация: 13.07.2008
Адрес: Россия, Урал
Сообщений: 6,813
Репутация: 1220

icq: 5836318
skype: ExcelVBA.ru
По умолчанию

Цитата:
Есть какая то возможность вытянуть их в оригинальном размере?
Увы, нет.
В файле Excel не сохраняется информация о исходном размере картинок.
Т.е. мы видим, что картинка «качественная» (можно увеличить размер - качество не станет хуже) - но узнать, во сколько раз картинка была крупнее изначано, увы, никак.


Если нужен макрос, выгружающий картинки в формате JPG в любой версии Excel:
http://excelvba.ru/programmes/PastePictures
(в меню есть пункт Изображения - Сохранить картинки в файлы)

Проблема макроса с ChartArea - он на разных версиях Excel по-разному выгружает картинку (добавляя белые полоски, в зависимости от версии Excel)

А макрос на базе CopyEnhMetaFile (из второго поста) - на выходе дает файл формата EMF (а не JPG)
Это обычно не критично, - но, если нужен именно JPG, - тогда используйте мой вариант из надстройки PastePictures
EducatedFool вне форума   Ответить с цитированием
Старый 07.07.2018, 01:32   #13
alf2006x
Новичок
 
Регистрация: 21.06.2010
Сообщений: 2
Репутация: 10
По умолчанию

Всем доброго дня.

Помогите, пожалуйста, у меня практически такая же задача.
Делаю всё как в инструкции от SAS888, но чё-то никак не взлетает

Задача следующая: я из под Excel-я запускаю Word, в нем открываю файл из которого пытаюсь достать все картинки и сохранить их на локальный диск.

Ругается на строку: sh.CopyPicture ...
Пишет что: Object doesn't support this property or method

Делаю так:
Код:

Set WordApp = CreateObject("Word.Application")
    WordApp.Visible = True
    Set wdDoc = WordApp.Documents.Open("c:\MyDocument.docx")
        For Each sh In wdDoc.Shapes
            sh.CopyPicture: OpenClipboard (0&): n = GetClipboardData(14)
            CopyEnhMetaFile n, "c:\" & "picture" & n & ".jpg": CloseClipboard
        Next sh

Заранее спасибо.

Последний раз редактировалось alf2006x; 07.07.2018 в 01:34.
alf2006x вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
вытащить текст из ячейки Tirendus Microsoft Office Excel 18 29.01.2012 19:51
как вытащить картинку из BLOB поля Dania SQL, базы данных 0 25.03.2010 13:44
Вытащить из ячейки только Фамилию buk Microsoft Office Access 3 10.10.2009 10:46
Как вытащить только часть символов из ячейки? Berkley Microsoft Office Excel 5 22.12.2006 01:43


16:31.


Powered by vBulletin® Version 3.8.8 Beta 2
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.

RusProfile.ru


Справочник российских юридических лиц и организаций.
Проекты отопления, пеллетные котлы, бойлеры, радиаторы
интернет магазин respective.ru