Не заменяет почему-то текст в надписи в документе Word?

Программирование на Visual Basic for Applications
Evlampy
Начинающий
Начинающий
 
Сообщения: 18
Зарегистрирован: 05.02.2004 (Чт) 10:04
Откуда: Кемерово

Не заменяет почему-то текст в надписи в документе Word?

Сообщение Evlampy » 09.02.2004 (Пн) 18:56

Привожу фрагмент кода макроса, который запускается из AutoCAD.
"CADNUMBER" - меняется, так как присутствует в шаблоне, как простой текст. А вот "ORIENTDIR" как был так и остался, не заменяется(он располагается в надписи). Та же самая замена непосредственно в Word выполняется для надписей, т.е. теоретически должно работать
Код: Выделить всё
    ObjWord.Documents.Add Template:=TemplateFullName, NewTemplate:=False, DocumentType:=0
    'Заменяем переменные
    VarName = "CADNUMBER":    VarVal = XRecordData(0):      GoSub ReplaceVarByValue
    VarName = "ORIENTDIR":   VarVal = XRecordData(3):       GoSub ReplaceVarByValue
ReplaceVarByValue:
    With ObjWord.Selection.Find
        .ClearFormatting
        .Replacement.ClearFormatting
        .Text = MkResh(VarName)
        .Replacement.Text = VarVal
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
        .Execute Replace:=wdReplaceAll
    End With
return

NicSoft
Обычный пользователь
Обычный пользователь
 
Сообщения: 80
Зарегистрирован: 05.04.2003 (Сб) 18:51
Откуда: Егорьевск

Сообщение NicSoft » 11.02.2004 (Ср) 19:50

Какой-то длинный путь ты выбрал с заменой переменных. Попробуй добавить в Word-е закладки. А в программу:
Код: Выделить всё
    With objWord.ActiveDocument.Bookmarks
        .Item("Закладка1").Range.Text = "Кадастровый номер"
        .Item("Закладка2").Range.Text = "д.Васюки..."
    End With


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 88

    TopList