|
v8: Замена текста в автофигуре word | ☑ | ||
---|---|---|---|---|
0
sv201
07.07.13
✎
11:10
|
Добрый день!
Есть документ Word. Заполняю программно: TextFind.Execute("[V1]", Ложь, Истина, Ложь, , , Истина, , Ложь, "test", 2); Текст [V1] находится в таблице, которая находится в автофигуре. Почему-то текст не заменяется, хотя вне автофигуры все отрабатывает нормально. Кто-нибудь знает как это обойти? |
|||
1
МихаилМ
07.07.13
✎
11:20
|
в word есть запись макроса.
запишите нужные действия. подсмотрите, адаптируйте для 1с. |
|||
2
sv201
07.07.13
✎
11:29
|
других вариантов нету никогда не работал с макросами, как с ними работать
|
|||
3
МихаилМ
07.07.13
✎
11:34
|
другой вариант.
проделать (1) за Вас. ждите добрых. или воспользуйтесь поисковыми службами интернет. |
|||
4
sv201
07.07.13
✎
11:39
|
Sub findTextFrame()
'заменяем текст в каждой надписи в документе Dim rng As Range Dim sh As Shape Dim str As String str = "[мк1]" For Each sh In ActiveDocument.Shapes With sh.TextFrame If .HasText <> 0 Then Set rng = .TextRange With rng.Find .ClearFormatting .Replacement.ClearFormatting .Text = str .Replacement.Text = "новая запись" .Forward = True .Wrap = wdFindContinue .MatchCase = False .Execute Replace:=wdReplaceAll End With End If End With Next sh End Sub |
|||
5
sv201
07.07.13
✎
11:40
|
вот макрос поиска и замены
|
|||
6
sv201
07.07.13
✎
11:40
|
только почему то не работает
|
|||
7
МихаилМ
07.07.13
✎
11:42
|
(6)
макрос не работает ? |
|||
8
sv201
07.07.13
✎
11:46
|
нашел в интернете макрос замены в автофигуре но почему даже на стадии еще редактирование шаблона wotd не срабатывает
|
|||
9
sv201
07.07.13
✎
11:46
|
макрос (4)
|
|||
10
Voronve
07.07.13
✎
12:34
|
(9) Надпись <> Автофигура
|
|||
11
sv201
07.07.13
✎
13:36
|
возможно решить таким вариантом:
Для к=1 по Документ.Shapes.Count цикл Документ.Shapes.Item(к).TextFrame.TextRange.Text.Find.Execute("[мк1]",0,0,,,,,,,НомерОтчетаИП,2); КонецЦикла; |
|||
12
sv201
07.07.13
✎
13:36
|
при компиляции ссылаеться на ошибку textRange
|
|||
13
sv201
07.07.13
✎
14:00
|
вот еще вариант но тоже ссылается на ошибку TextRange
ссылка на страницу http://dev.mista.ru/topic.php?id=128744 синтаксис: Для к=1 по oWord.ActiveDocument.Shapes.Count Цикл oWord.ActiveDocument.Shapes(к).TextFrame.TextRange.Text=СтрЗаменить(oWord.ActiveDocument.Shapes(к).TextFrame.TextRange.Text,"Вася","Петя"); КонецЦикла; |
|||
14
sv201
07.07.13
✎
14:19
|
?
|
|||
15
sv201
07.07.13
✎
17:01
|
????
|
|||
16
sv201
07.07.13
✎
17:54
|
просьба помочь перевести из язика с++ в 1С
1 2 3 4 5 6 7 8 tagVARIANT a = (OleVariant) 2;//номер автофигуры WordApplication1->ActiveWindow->ActivePane->View->SeekView = wdSeekCurrentPageHeader;//активируем колонтитул WordApplication1-> Selection->HeaderFooter->Shapes->Item(&a)->Select();//выделяем автофигуру TVariant strFindFor = "~№";//метка - текст в автофигуре TVariant strReplaceWith = "111";//на что заменяем WordApplication1->Selection->Find->Execute(strFindFor,EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, strReplaceWith, (TVariant)wdReplaceAll,EmptyParam, EmptyParam, EmptyParam, EmptyParam); |
|||
17
sv201
07.07.13
✎
18:38
|
никто незнает???
|
|||
18
Ковычки
07.07.13
✎
19:05
|
хрень
|
|||
19
sv201
07.07.13
✎
23:08
|
обновление страницы
|
|||
20
sv201
08.07.13
✎
11:05
|
СчетчикЦикла = 0;
КолВоНадписей = Документ.Shapes.Count; Для СчетчикЦикла = 1 По КолВоНадписей Цикл мНашлиАФ = Документ.Shapes.Item(СчетчикЦикла); мНашлиАФ.TextFrame.Application.Selection.Find.Execute("[мк1]",Ложь,Истина,Ложь,,,Истина,,Ложь, "текст замены",2); КонецЦикла; Заменяет только один параметр, если в цикле использовать еще замену то вообще ничего не заменяет |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |