powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Слияние с Word
14 сообщений из 14, страница 1 из 1
Слияние с Word
    #32373506
Юрий Р.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые гуру, у меня следующая проблема. Заполняю поля документа Word из таблицы Access, точнее из результата запроса. Операция привязана к кнопке, имеющей адрес гиперссылки на документ. Слияние с Word построено при помощи мастера. Почему при нажатии на кнопку открывается еще один экземпляр Access ? И как этого избежать ? Для справки: использую Office XP на платформе Win2000Pro. Помогите пожалуйста.
...
Рейтинг: 0 / 0
Слияние с Word
    #32373520
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Слияние с Word
    #32373546
Юрий Р.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Geo.
Спасибо. Но мне нужен ответ на вопрос: как избежать запуска Word-ом еще одного Access ? Может в настройках какой гачок поставить или снять, или с помощью кода ?
...
Рейтинг: 0 / 0
Слияние с Word
    #32373551
vist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Новый экз Акс открывает Ворд когда связывается с базой Мастер предусматривает открытие базы
...
Рейтинг: 0 / 0
Слияние с Word
    #32373554
Фотография Geo
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дык, кто ж знает, что акцессный "мастер слияний" рисует?
Посмотри по сформированному им коду:
Еще один экземпляр акцесса, вероятно создается посредством

set myvar=new access.application

set myvar = createobject("access.application")

или

shell ".....\msaccess.exe ...."

Создается он, наверное, не почем зря. Надо его закрыть после выполнения кода, наверное. Вряд ли тут много людей работает с этим мастером, поэтому, скорее всего, тебе придется запомнить расположение клавиши F1 и самому поработать с кодом.
...
Рейтинг: 0 / 0
Слияние с Word
    #32373573
vist
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я понял так, по гиперссыске вызывается ворд а документ связыватся с бд
т.е. слияние ворда с акцесом но не наоборот. прак что открой макрос который создал ворд и смотри там.Гдето он открывает бд и полусает данные
...
Рейтинг: 0 / 0
Слияние с Word
    #32373589
Фотография Svetlana_613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Лучше пользоваться не акцессовским мастером, а наоборот вердовским.
Открываешь документ верда и настраиваешь подключение путем ODBC через Мастер слияния
...
Рейтинг: 0 / 0
Слияние с Word
    #32373647
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Слияние - одна из самых древних технологий в Word-e, если не самая...
Как помнится, Word не просто "поднимает" Access, но еще и общается с ним через DDE. Ладно, что медленно, так еще и ненадежно. Отключить режим работы через DDE, кажется, НЕ МОЖНО.

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

Толковой (в смысле полноты функционала и удобства для КОНЕЧНОГО пользователя) замены пока нет.
Совет смотри панель "базы данных->вставить базу данных" - это дружит c OLE
(как мне помнится)

Заменить можно приличным шаблоном, поигравшись с ним в "автоматизацию" с закладками, полями и свойствами документа. Слияние в шаблоне использовать несколько нелепо.

С Уважением,
Виктоша
...
Рейтинг: 0 / 0
Слияние с Word
    #32373667
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
дарю!

(основа из книшки, правда...)

надо сделать темплету с букмарками. легко делается с помошью вставки "текстовых полей" из панели "Формы"

Код: plaintext
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.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
Function PrintDoc(query As String, _
                  templatedoc As String, _
                  pathname As String, _
                  suffix As String, _
                  print_immidiate As Boolean, _
                  ParamArray fieldsForName() As Variant) As Boolean

  ' query - запрос, который выдает все поля, которые надо разместить на форме
  ' templatedoc - имя файла с шаблоном документа
  ' pathname - путь к файлу, оканчивающийся \. Сюда же можно добавить префикс
  ' suffix - окончание имени файла. Расширение не нужно
  ' fieldsForName - имена полей через запятую, из которых сделать середину имени файла
  
  ' В шабюлоне должны быть настроены  "закладки"  ( "bookmarks" ), с именами, совпадающими
  ' с именами полей или псевдонимами в передаваемом запросе, суфиксом _XX, чтобы добиться
  ' уникальности имен закладок, если одно поле надо вывести более одного раза.
  ' Формат вывода надо настраивать в запросе.

  PrintDoc = True

  Dim wda As Word.Application
  Dim wdd As Word.Document
  
  On Error GoTo worderror
  
  Dim fieldname As String
  Dim fieldname2 As Variant
  Dim filename As String
  
  Dim b As Bookmark
  
  Dim rs As New ADODB.Recordset
  
  rs.Open query, CurrentProject.Connection
  
  If Not rs.EOF Then
    Set wdd = GetObject(templatedoc)
    Set wda = wdd.Parent
    wda.Visible = True
    
    For Each b In wdd.Bookmarks
      fieldname = Mid(b.name,  1 , InStrRev(b.name,  "_" ) -  1 )
      b.Select
      
      If Not IsNull(rs.Fields(fieldname)) And rs.Fields(fieldname) <>  "" Then
        wda.Selection.TypeText rs.Fields(fieldname)
      Else
        wda.Selection.TypeText "   "
      End If
    Next
  Else
    MsgBox " Запрос ничего не вернул ", vbInformation
    PrintDoc = False
  End If
  
  For Each fieldname2 In fieldsForName
    filename = filename & rs.Fields(fieldname2)
  Next
  
  If print_immidiate Then
    wdd.PrintOut False
  End If
  
  wdd.SaveAs (pathname & filename & suffix & " .doc ")
    
  wdd.Close
  wda.Quit
  
  rs.Close
  
  Set rs = Nothing
  Set wda = Nothing
  Set wdd = Nothing
  Exit Function
  
worderror:
  MsgBox " Ошибка:  " & Err.Description & "  " & Err.Number, vbCritical
  PrintDoc = False
  Set rs = Nothing
  Set wda = Nothing
  Set wdd = Nothing
  Exit Function
End Function
...
Рейтинг: 0 / 0
Слияние с Word
    #32373668
Фотография fedd
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ах да, блин, настройки шаблонов лежат в таблице document
...
Рейтинг: 0 / 0
Слияние с Word
    #32373683
Юрий Р.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Большое всем спасибо! Как все это сделать в коде через рекордсет я знаю. Дело в том, что времени на написание этого самого кода НЕТУ. А тут еще кто-то вспомнил, что делал нечто подобное через слияние. И все бы ничего. Единственная заноза - этот повторный запуск Access. Трудно заставить юзера не забывать его закрывать. И все равно спасибо.
...
Рейтинг: 0 / 0
Слияние с Word
    #32374088
Фотография Svetlana_613
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый гуру, Виктоша.
Естественно, что "Word не только поднимает Access, но и общается с ним при помощи DDE", и именно поэтому он его и поднимает.
Мной было предложено самое простое решение этой проблемы, как Вы сами и заметили, которым может воспользоваться "девочка-секретарша в какой-нибудь нотариальной конторе", но при заданной постановке вопроса,насколько я поняла, именно это и требовалось
И пользуясь всего лишь клавишей F1, можно выяснить, что именно использование ODBC исключает повторный запуск Access.
Иными словами все просто и наверняка,тем более, что "Толковой (в смысле полноты функционала и удобства для КОНЕЧНОГО пользователя) замены пока нет"
А насчет "Совет смотри панель "базы данных->вставить базу данных" ", то это исключительно по необходимости вставки базы данных, а не полей. В общем нюансов более, чем достаточно.

С Уважением Светлана.
...
Рейтинг: 0 / 0
Слияние с Word
    #32374295
Фотография Victosha
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уважаемый(ая) гуру [Svetlana_613]

Ваши разъяснения приняты. Xp действительно демонстрирует чудеса развития html-технологий.

Виктоша
...
Рейтинг: 0 / 0
Слияние с Word
    #32374820
Юрий Р.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые теоретики и практики, спешу поделиться своим открытием. Оказывается второй экземпляр Access запускался по той простой причине, что в параметрах запуска был определен заголовок приложения, отличный от "Microsoft Access". Надеюсь, что информация окажется кому-нибудь полезна. Всем спасибо и удачи.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Слияние с Word
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]