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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.08.2009, 11:15   #1
Seqular
Пользователь
 
Аватар для Seqular
 
Регистрация: 16.02.2007
Сообщений: 37
По умолчанию Вставка изображения на определенную страницу.

Нужно написать процедуру, которая вставляет в документ изображение на определенную страницу. Передаются три параметра: номер страницы и Left и Top изображения. В общем вроде бы все просто, но что бы я не делал - вставляется все только на первую страницу.

Фрагмент процедуры:
Код:
        With ActiveDocument.Shapes.AddPicture(Word.ActiveDocument.Path & "\img.bmp")
        .Left = ParamLeft
        .Top = ParamTop
        End With
Примерно такой код.
Как вот только указывать на какую именно страницу вставлять?
Seqular вне форума Ответить с цитированием
Старый 26.08.2009, 13:39   #2
viter.alex
Балуюсь кодами
Участник клуба
 
Аватар для viter.alex
 
Регистрация: 09.01.2009
Сообщений: 1,837
По умолчанию

Как-то так
Код:
Sub AddPictureToSpecifiedPage(sPicPath As String, iPage As Integer, iTop As Single, iLeft As Single)
  Dim oRng As Range 'диапазон для страницы, на которую нужно вставить картинку
  Dim oShp As Shape 'переменная для картинки вне текста
  Dim oInShp As InlineShape 'переменная для картинки в тексте
  'Переходим на указанную страницу
  Set oRng = ActiveDocument.Range.GoTo(wdGoToPage, wdGoToAbsolute, iPage)
  'Добавляем в текст этой страницы картинку
  Set oInShp = oRng.InlineShapes.AddPicture(sPicPath, False, True, oRng)
  'Убираем картинку из текста
  Set oShp = oInShp.ConvertToShape
  'Ставим для картинки заданные координаты
  oShp.Top = iTop: oShp.Left = iLeft
  Set oRng = Nothing: Set oShp = Nothing: Set oInShp = Nothing
End Sub
Лучше день потерять — потом за пять минут долететь!©
viter.alex вне форума Ответить с цитированием
Старый 29.08.2009, 14:09   #3
Seqular
Пользователь
 
Аватар для Seqular
 
Регистрация: 16.02.2007
Сообщений: 37
По умолчанию

Спасибо! Проблема решена!
Seqular вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как напечатать определенную страницу k1r1ch Microsoft Office Excel 14 10.07.2009 18:29
Возможно ли удалить, вырезать, определенную строку в TMemo Des Компоненты Delphi 2 28.04.2009 16:21
Вывод слов на определенную букву REztor Помощь студентам 12 22.03.2009 21:48
Чтение изображения из базы данных, Вместо изображения - "System.Byte[]" ruelCrow Общие вопросы .NET 3 10.07.2008 23:29
Считать определенную строку из файла DimkinStd Работа с сетью в Delphi 4 15.02.2007 22:30