Страница 1 из 2
Переменные в документе word
Добавлено: 17 июл 2006, 09:17
Taller
Как правильно вставить переменную в документ word? чтоб потом к ней можно было обращаться из программ VBA и макросов Excel в том числе.
как организовать такое обращение?
Добавлено: 18 июл 2006, 01:50
Taller
по CTRL+F9 не удается,
и вставить поле, тоже не работает даже на примерах из хелпа
Добавлено: 18 июл 2006, 10:57
Игорь Акопян
я из дельфей с закладками работал (Bookmarks) может сюда копнуть?
Добавлено: 18 июл 2006, 13:37
Taller
скорее всего что это одно и то же, те же яйца вид сбоку.
как с ними работать?
т.е.
wDoc = GetObject("mywrod.doc")
1. дальше хочу получить список всех переменных (закладок, docavriable или чего то еще)
2. присвоить им свои значения
3. отобразить все это добро
п.с. с дельфями работал года 3 назад, а под офис вообще ничего не писал. вот осваиваю смежные специальности
Добавлено: 18 июл 2006, 16:34
Игорь Акопян
насчёт списка не уверен, но есть что-то вроде коллекции Variables("имя")
Добавлено: 18 июл 2006, 16:49
Taller
речь про DOCVARIABLES("имя") ???
если да, то
1. как их поместить в документ в нужное место?
2. как этим переменным задать значение при обращении из excel'я?
Добавлено: 19 июл 2006, 10:45
Игорь Акопян
упс.. просмотрел реализацию (чужая) это они там так закладки назвали....
можно просто добавить закладку через Вставка/Закладка обращение к ней
ActiveDocument.Bookmarks("имязакладки").Range.Text = "qweqweqwe"
Добавлено: 24 июл 2006, 04:07
Naeel Maqsudov
Не смешивайте!
Закладки, Поля и Переменные документа - это три совершенно разные вещи!
Опишите подробнее, что нужно.
Текст должен быть виден в документе? Изменять его сожержимое из макроса надо?
Добавлено: 24 июл 2006, 08:02
Taller
есть шаблон документа, в который хочется подставлять данные из Excel строго в определенные участки документа.
Например: ФИО первой строкой, общая сумма последней, и т.д.
Добавлено: 24 июл 2006, 09:24
Sokl
Я делал так (пользовался формами).
1. MSWord -> RClick на панелях инструментов Ворда -> "Формы" (чтобы отобразить панель инструментов "Формы")
2. На панели инструментов "Формы" - LClick "Текстовое поле" -> В документе появится текстовое поле (серенькое, если затенение полей формы включено)
3. RClick на появившемся поле в документе -> Свойства
4. В окне "Параменты текстового поля" -> "Параменты поля/Закладка:" вводим, например, "MyTextField1" -> ОК
5. В текстовом поле документа (сереньком) вводим какой-нибудь текст, например, "QWERTY"
6. В ВБА (Alt+F11) -> пишем:
Код: Выделить всё
Sub tt()
MsgBox ThisDocument.FormFields.Item("MyTextField1").Range.Text
End Sub
7. F5 на макросе и видим на экране "QWERTY" ! Или "ЙЦУКЕН", как у меня, что в общем-то тоже радует глаз!
Я, кстати, ещё и защиту документа включал, чтобы "никто

" не мог исправить ничего, кроме данных форм...
Пойдёт? Извиняюсь, что так подробно, вдруг всё-таки кто-ньть читать будет
