Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

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

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

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 13.08.2012, 09:52   #1
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию word работа с макросами.

Ребята, подскажите реально ли с помощью макроса преобразовать объект-рисунок в просто рисунок. Вот например копируем объект в буфер, потом из буфера в paint из paint обратно в word. И если можно пните где-то почитать, посмотреть как сие сделать, от программирования не далек, от от OVB немного далек. )))
Заранее благодарю.
Небесный вне форума Ответить с цитированием
Старый 13.08.2012, 10:11   #2
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

Запишите в макрос действия: скопировать, спец. вставка - как точечный рисунок (или рисунок (PNG) - это зависит от того, какого рода объект).
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 13.08.2012, 11:06   #3
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Ну, это могут быть диаграмы, формулы, фигуры. Тоесть грубо говоря полный набор объектов, которые есть в word.

Для начала чтобы их можно было сделать картинками, нужно их выделить.

Код:
Sub selectAllShapes()
     ActiveDocument.Shapes.SelectAll
End Sub
Хотя не уверен, что все объекты будут Shapes, или это общий класс для всех объектов? Извините конечно за тупые вопросы, мало знаком с бейсиком, да еще и в офисе.
Небесный вне форума Ответить с цитированием
Старый 13.08.2012, 11:29   #4
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Подскажите, что здесь не так.

Код:
Sub object()
'
' object Ìàêðîñ
'
'
Dim i As Integer, CountObject As Integer

CountObject = ActiveDocument.Shapes.Count

For i = 1 To CountObject
    ActiveDocument.Shapes(i).Select
    Selection.Copy
    Selection.PasteSpecial Link:=False, DataType:=15, Placement:=wdInLine, _
        DisplayAsIcon:=False
Next i

End Sub
Небесный вне форума Ответить с цитированием
Старый 13.08.2012, 15:01   #5
Казанский
Старожил
 
Аватар для Казанский
 
Регистрация: 31.12.2010
Сообщений: 2,133
По умолчанию

А что "не так"? Код компилируется и работает без ошибок (попробовал на одной автофигуре).
Наверно, результат получается не такой, как хотите - но тогда приложите свой файл, на котором можно попробовать.
В документе Word есть две отдельные коллекции объектов - Shapes и InlineShapes. Вы берете объекты из Shapes, а вставляете в текст (Placement:=wdInLine).
exceleved@yandex.ru Яндекс.Деньги: 410011500007619
Казанский вне форума Ответить с цитированием
Старый 13.08.2012, 19:46   #6
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Код:
ActiveDocument.Shapes(k).Duplicate.ConvertToInlineShape.Select
Но только для точечного рисунка (k-го в документе); автофигуры сей код не переваривает.

Действующий пример: http://programmersforum.ru/showthread.php?t=54187#4
Sasha_Smirnov вне форума Ответить с цитированием
Старый 14.08.2012, 22:00   #7
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Ну, я так понял, что

Код:
ActiveDocument.Shapes(k).Duplicate.ConvertToInlineShape.Select
это не для всех объектов, как еще можно описать оставшиеся, которые не попали выше приведенный код?
Небесный вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа с макросами temsky Microsoft Office Excel 5 18.08.2011 18:30
Работа с макросами Volume Microsoft Office Excel 3 26.05.2011 22:19
Любителям VBA, работа с макросами. DmitryMedvedev Помощь студентам 0 08.12.2010 15:40
Работать в Word, не открывая документы (работа с закрытыми документами Word) Георгиевич Microsoft Office Word 10 07.09.2009 11:19
Тем кто ищет Microsoft Office Word, здесь есть шаблон, с макросами OMO Microsoft Office Word 4 22.01.2009 03:46