Как сохранить связи word - excel

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
Андрей ZV
Сообщения: 3
Зарегистрирован: 06 мар 2008, 13:45

Пожалуйста помогите! создал несколько связанных документов word и excel (через копировать/правка/специальная вставка/неформатированный документ, так как только он не изменяет формат текста в моем wordовском документе ) поместил их в одну папку. Конечный текстовый продукт в word. При копировании и вставке всей папки под новым именем или переносе всей папки на флэшку связи в wordовском документе остаются на документы изначальной папки. Может можно как-то объединить документы находящиеся в папке в один какой-нибудь блок, чтоб связи не скакали а жили одной семьей в каждой скопированной папке. (У меня текстовый документ в word и меняются только отдельные слова или цифры). Спасибо!
Аватара пользователя
Aent
Сообщения: 1129
Зарегистрирован: 01 окт 2006, 14:52
Откуда: Saratov,Russia
Контактная информация:

Для старых версий офиса была такая штука MS Binder...
Что касается существа вопроса, то IMHO, неверна исходная технология.
Замечательно работает следующая схема:
1) Открываем документ Word
2) В VBA при открытии документа устанавливаем связи с нужными книгами Excel,
лежащими в текущем каталоге. (Например, используя GetObject)
3) Забираем из файлов Excel нужные данные и помещаем из (например, используя поля или закладки) в нужные части документа Word
4) Если переносятся сразу куски таблиц, то через OLE
Андрей ZV
Сообщения: 3
Зарегистрирован: 06 мар 2008, 13:45

Aent писал(а):Для старых версий офиса была такая штука MS Binder...
Что касается существа вопроса, то IMHO, неверна исходная технология.
Замечательно работает следующая схема:
1) Открываем документ Word
2) В VBA при открытии документа устанавливаем связи с нужными книгами Excel,
лежащими в текущем каталоге. (Например, используя GetObject)
3) Забираем из файлов Excel нужные данные и помещаем из (например, используя поля или закладки) в нужные части документа Word
4) Если переносятся сразу куски таблиц, то через OLE
======================================================
Большое спасибо! Буду разбираться.
Андрей ZV
Сообщения: 3
Зарегистрирован: 06 мар 2008, 13:45

""2) В VBA при открытии документа устанавливаем связи с нужными книгами Excel,
лежащими в текущем каталоге. (Например, используя GetObject)"
Как установить эти связи?
Аватара пользователя
Aent
Сообщения: 1129
Зарегистрирован: 01 окт 2006, 14:52
Откуда: Saratov,Russia
Контактная информация:

А в Help посмотерть слабо ?
&quot писал(а):Как установить эти связи?

Код: Выделить всё

Dim oWb as Object
On error resume next
set oWb =GetObject(ThisWorkbook.Path & "/MyWorkBook.XLS")
'или Application.Workbooks.Open(....)
if err.Number <> 0 then
     err.clear
     msgbox " :( "
end if
.........................
set oWb = Nothing
Ответить