powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Относительный путь к источнику данных при слиянии
11 сообщений из 11, страница 1 из 1
Относительный путь к источнику данных при слиянии
    #33880992
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как сделать, чтобы документ при слиянии автоматически искал источник данных в текущем каталоге?

В директории имеется exel-овская табличка и документ Word, берущий из этой таблички данные для слияния. Если перенести табличку и документ в другое место или просто переименовать директорию, где они лежат, то документ при открытии сам табличку не находит, приходится искать её вручную.

Нужно, чтобы вордовый документ помнил, откуда инфу брать, и после переноса на другое место не запрашивал источник данных для слияния ещё раз.

Система Win XP + Office 2003
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33881004
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В принципе, работает вот такая конструкция (берём данные с листа НужныйЛист файла MergeEXCEL.xls ):

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
Private Sub Document_Open()
    ActiveDocument.MailMerge.OpenDataSource Name:= _
        "MergeEXCEL.xls", ConfirmConversions:=False, ReadOnly _
        :=True, LinkToSource:=True, AddToRecentFiles:=False, PasswordDocument:= _
        "", PasswordTemplate:="", WritePasswordDocument:="", _
        WritePasswordTemplate:="", Revert:=False, Format:=wdOpenFormatAuto, _
        Connection:= _
        "Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=MergeEXCEL.xls;Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Jet OLEDB:Database Password="""";Jet OLEDB:Engi" _
        , SQLStatement:="SELECT * FROM `НужныйЛист$`", SQLStatement1:="", SubType:= _
        wdMergeSubTypeAccess
End Sub

Однако перед открытием файла она всё равно ругется.
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33881009
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При этом способе слишком умный Word всё равно где-то запоминает абсолютный путь к табличке, с которой изначально проходило слияние...
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33881126
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как ругается? Я пробовал - все ок (WinXP SP-1 + Office 2003 SP-2).

Попробуй еще так.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
Private Sub Document_Open()
    Dim strPath As String
    
    strPath = ThisDocument.Path & "\" & "MergeEXCEL.xls"

    ActiveDocument.MailMerge.OpenDataSource _
      Name:=strPath, _
      Connection:="Provider=Microsoft.Jet.OLEDB.4.0;" & _
      "Password="""";User ID=Admin;Data Source=" & strPath & _
      ";Mode=Read;Extended Properties=""HDR=YES;IMEX=1;"";" & _
      "Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";" & _
      "Jet OLEDB:Database Password="""";Jet OLEDB:Engi", _
      SQLStatement:="SELECT * FROM `Лист1$`"
End Sub
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33883046
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ashton , идея отличная, но проблема в том, что данные для слияния документ требует до срабатывания события Document_Open. Потому и ругается. В общем, оба решения - хороший workaround, но искать надо не там. Скорее всего, существует какая-то галочка в дебрях свойств документа, которая переключает путь поиска источника данных для слияния с абсолютного на относительный.
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33884095
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Ты вообще удали источник данных в документе слияния и тогда при открытии документа будет открываться соответсвующий.
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33884894
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Где это делается?
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33885117
Ashton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Попробуй.

Код: plaintext
    ActiveDocument.MailMerge.MainDocumentType = wdNotAMergeDocument
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33951882
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всё равно то срабатывает, то нет. А универсальный способ должен быть, потому что я видел документы со слиянием, которые нормально работают после переноса на другое место без каких-либо ухищрений.
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33955644
Helga_x52
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Commander Хэлл ты нашел решение своей проблемы??? Если да то кинь пожалуйста на форум а то млин у меня таже проблема ((
...
Рейтинг: 0 / 0
Относительный путь к источнику данных при слиянии
    #33997843
Commander Хэлл
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, не нашёл. Я просто пририсовал две кнопочки - одна удаляет источник данных (спасибо Ashton ), другая - его добавляет. А путь к источнику данных прописывается в макросе вручную. Перед переносом на новое место отправитель жмёт кнопку, удаляющую источник, а при получении документа из другого места - получатель прописывает путь и жмёт кнопочку, добавляющую источник, или делает слияние по-честному, при помощи мастера.
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Относительный путь к источнику данных при слиянии
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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