Форум программистов, компьютерный форум, киберфорум
Наши страницы
MS Access
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.80/5: Рейтинг темы: голосов - 5, средняя оценка - 4.80
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
#1

Создание документа с картинками

20.04.2017, 17:00. Просмотров 861. Ответов 12
Метки нет (Все метки)

Здравствуйте!
Есть база Аксесс, в базе создается файл Wорд (на основе шаблона в таблице базы) с текстом все понятно, вставляется как надо. Как вставить картинку? в тот же документ в таблицу.


Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Private Sub Кнопка6_Click()
    
    Dim Название ' переменная поля
    ' присваиваем переменной значения поля в таблице
    Название = DLookup("[Поле1]", "Таблица1", "[Код] = 1")
    
    'Получаем шаблон из базы данных
    Dim oBOF As BoundObjectFrame
    Set oBOF = Form_Форма1.Рамка
    
    ' присваиваем объекту документ Word из таблицы tbl_вложения
    oBOF = DLookup("[Документ]", "Таблица1", "[Код] = 1")
    oBOF.Verb = acOLEVerbOpen
    oBOF.Action = acOLEActivate
    
    'Получаем ссылки на запущенный нами Word и открытый в нем документ
    Dim oWord As Word.Application
    Set oWord = GetObject(, "Word.Application")
    Dim oDoc As Word.Document
    Set oDoc = oWord.ActiveDocument
    oWord.Visible = True
    oWord.ActiveWindow.WindowState = wdWindowStateMaximize
    oDoc.Activate
    
    ' заполняем закладки в документе
    oDoc.Bookmarks("Закладка").Range.Text = Название
 
'==========================================
'--- Код вставляющий картинку в таблицу ---
'==========================================
 
   
End Sub

понимаю что нужно через объектную модель работать, плохо знаком как с ней, нужна помощь.
0
Вложения
Тип файла: zip База.zip (77.4 Кб, 5 просмотров)
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.04.2017, 17:00
Ответы с готовыми решениями:

Создание рейтинга сотрудников с картинками
В базе решил сделать, что-то в виде рейтинга для сотрудников, но не в виде...

Создание отчета для шаблона документа
Привет всем! Есть готовые бланки документа (т.е. уже распечатаны, с полями...

Есть работающий код создание документа Word по шаблону
Создание документа Word по шаблону. Создаю шаблон в Word,ставлю закладки....

Способы создания кнопки с текстом и картинками
Всем привет! Как создавать кнопки с текстом и картинкой? Ранее создавал...

1с УТ 10.3. Создание документа на основании при проведении другого документа. Реализация механизма перепроведения.
Доброго времени суток, задача стояла при проведении одного документа1,...

12
Eugene-LS
Эксперт MS Access
3185 / 1830 / 335
Регистрация: 05.10.2016
Сообщений: 5,062
20.04.2017, 19:10 #2
Цитата Сообщение от aleks_des Посмотреть сообщение
с текстом все понятно, вставляется как надо.
У меня не отработало - MSA 2013 x32.

Я бы попробовал методы:
... Action = acOLECopy
и потом:
... .Action = acOLEPaste

Ну это так... мысли ...
- не факт что поможет (и отвечать мне совсем не обязательно).
Успехов!
0
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
21.04.2017, 09:41  [ТС] #3
Подскажите как сделать макрос на копирование картинки в буфер?
0
akcessnik
3 / 3 / 0
Регистрация: 02.04.2017
Сообщений: 9
25.04.2017, 15:48 #4
Цитата Сообщение от aleks_des Посмотреть сообщение
Подскажите как сделать макрос на копирование картинки в буфер?
ctrl+c
0
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
25.04.2017, 15:59  [ТС] #5
akcessnik, сочетание клавиш то я и сам знаю, как макрос сделать???
0
Capi
1687 / 888 / 169
Регистрация: 12.06.2016
Сообщений: 1,935
25.04.2017, 16:10 #6
Лучший ответ Сообщение было отмечено aleks_des как решение

Решение

Цитата Сообщение от aleks_des Посмотреть сообщение
Подскажите как сделать макрос на копирование картинки в буфер?
Например (если под макросом понимать код VBA):
Visual Basic
1
2
3
 Картинка = DLookup("Картинка", "Таблица1", "Код=1")
 Картинка.SetFocus
 DoCmd.RunCommand acCmdCopy
Здесь контрол Картинка имеет тип ПрисоединенныйOLE.
1
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
25.04.2017, 16:14  [ТС] #7
Capi, а подскажите как ее еще и вставить из буфера эту картинку в Wорд?
уже в выделенную область select
0
Capi
1687 / 888 / 169
Регистрация: 12.06.2016
Сообщений: 1,935
25.04.2017, 16:21 #8
Цитата Сообщение от aleks_des Посмотреть сообщение
Capi, а подскажите как ее еще и вставить из буфера эту картинку в Wорд?
Добавлено через 27 секунд
уже в выделенную область
Как вариант - Ctrl-V.
А если серьезно, в VBA есть команда
Visual Basic
1
DoCmd.RunCommand acCmdCopy
Попробуйте как-то применить в Word.
Или пусть расскажут те, кто любит выводить из Access в Word.
Я этого практически не делаю.
Надо бы, конечно, поупражняться, но пока особо не требовалось.
1
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
25.04.2017, 16:33  [ТС] #9
Capi, Картинка.SetFocus дает ошибку
0
Capi
1687 / 888 / 169
Регистрация: 12.06.2016
Сообщений: 1,935
25.04.2017, 16:57 #10
Цитата Сообщение от aleks_des Посмотреть сообщение
Картинка.SetFocus дает ошибку
Что именно происходит?
У меня все нормально срабатывает.

Когда уже народ научится приводить сообщение об ошибке...

И исчез...
Ну, и я ухожу.
0
aleks_des
188 / 7 / 3
Регистрация: 20.01.2015
Сообщений: 170
25.04.2017, 17:05  [ТС] #11
Capi, Все работает, разобрался, спасибо!!!
0
Eugene-LS
Эксперт MS Access
3185 / 1830 / 335
Регистрация: 05.10.2016
Сообщений: 5,062
25.04.2017, 17:13 #12
Лучший ответ Сообщение было отмечено aleks_des как решение

Решение

aleks_des, ещё вариантик с:
Visual Basic
1
2
    Me!objРисунок.Action = acOLECopy
    ActiveDocument.Tables(1).Cell(1, 1).Range.Paste
Итак:
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Private Sub Кнопка6_Click()
'
'--------------------------------------------------------------------------
Dim oWord As Word.Application
 
On Error GoTo Кнопка6_Click_Err
    'Me!objРисунок.SetFocus
    
    'Получаем шаблон из базы данных
    Dim oBOF As BoundObjectFrame
    'Set oBOF = Form.Controls("Рамка")
    Set oBOF = Form_Форма1.Рамка
    
    ' присваиваем объекту документ Word из таблицы tbl_вложения
    oBOF = DLookup("[Документ]", "Таблица1", "[Код] = 1")
    oBOF.Verb = acOLEVerbOpen
    oBOF.Action = acOLEActivate
    
    'Получаем ссылки на запущенный нами Word и открытый в нем документ
    Set oWord = GetObject(, "Word.Application")
    Dim oDoc As Word.Document
    Set oDoc = oWord.ActiveDocument
    oWord.Visible = True
    oWord.ActiveWindow.WindowState = wdWindowStateMaximize
    oDoc.Activate
    
    ' заполняем закладки в документе
    oDoc.Bookmarks("Закладка").Range.Text = Me!txtПоле1
'==========================================
'--- Код вставляющий картинку в таблицу ---
'==========================================
 
    Me!objРисунок.Action = acOLECopy
    ActiveDocument.Tables(1).Cell(1, 1).Range.Paste
 
Кнопка6_Click_Bye:
    Exit Sub
 
Кнопка6_Click_Err:
    If Err.Number = 5097 Then GoTo Кнопка6_Click_Bye
    MsgBox "Ошибка " & Err.Number & vbCrLf & Err.Description & vbCrLf & "в процедуре: Кнопка6_Click", vbCritical, "Error in module Form_Форма1"
    Resume Кнопка6_Click_Bye
End Sub
1
Eugene-LS
Эксперт MS Access
3185 / 1830 / 335
Регистрация: 05.10.2016
Сообщений: 5,062
25.04.2017, 17:15 #13
Лучший ответ Сообщение было отмечено aleks_des как решение

Решение

Ну и примерчик
1
Вложения
Тип файла: zip База02.zip (57.4 Кб, 3 просмотров)
25.04.2017, 17:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
25.04.2017, 17:15

Автоматическое создание документа на основании другово документа
У меня возникла проблема, как сделать так чтобы при создании Документа1...

алгоритм для каталога - создание элемента с картинками
Здравствуйте, уважаемые участники форума! Нужна ваша консультация, потому что...

Создание бара с картинками (как в игровых аппаратах)
Здравствуйте! С рождеством Вас! Пожскажите, возможли ли в Java создать GUI с...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
13
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru