powered by simpleCommunicator - 2.0.38     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Поиск и замена в файле MS Word???
24 сообщений из 24, страница 1 из 1
Поиск и замена в файле MS Word???
    #34183669
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
По работе появилась необходимость провести поиск строки в файле MS Word и на место найденного слова вставить изображение. Кто знает как это можно сделать или любые идеи по этому вопросу, прошу подсказать. За ранее благодарен ! С уважением Артем
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34183707
LINUXER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
может спросить на Visual Basic
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34183793
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
к сожалению надо именно на java script
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34184941
LINUXER
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
RAteк сожалению надо именно на java script
Мягко говоря это не разумно(js не для того сделан)
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34184970
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
LINUXER RAteк сожалению надо именно на java script
Мягко говоря это не разумно(js не для того сделан)

я знаю, что js не для этого сделан изначально, однако наша разработка поддерживает только JS и в этом есть проблема !

Появилась такая идея: с помощью поиска найти нужное слово (поиск я налел как делать), однако поиск не переводит курсор на найденное место, как можно его туда перевести ?
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185056
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 RAte
каким образом вы читаете документ, через объект?
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185063
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2
2 RAte
каким образом вы читаете документ, через объект?
--



Posted via ActualForum NNTP Server 1.3

вот так:

var oWord = new ActiveXObject("Word.Application");
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185071
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
2 RAte
в VBA можно написать программу, а потом переписать на js
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185072
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
вернее вот так
var oWord = new ActiveXObject("Word.Application");
var oDoc = oWord.Documents.Add("имя_файла");
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185074
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2
2 RAte
в VBA можно написать программу, а потом переписать на js
--



Posted via ActualForum NNTP Server 1.3

т.е. ?
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185087
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
В Word встроен редактор макросов.
Объекты там совпадют с объектами на js
и есть документация.
Можно написать программу в виде макроса, на VBA
а потом переписать её на js потому что программы
будут различатся только особенностями синтаксиса
языков, но основные объекты/методы/свойства будут одинаковы.
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185109
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
я так пробовал делать, дело в том, что процедура написанная мной в виде макроса на VBA, выделяет найденный текст и переводит туда курсор, а вот таже самая процедура на js, не переводит курсор и не выделяет найденный текст, при этом процедура выполняется успешно, и режим замены тоже работает !
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185124
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
там есть коллекция слов, может можно искать и заменять в ней?
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185128
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Green2
там есть коллекция слов, может можно искать и заменять в ней?
--



Posted via ActualForum NNTP Server 1.3

можно по подробнее? что такое коллекция слов ? и как ее можно использовать ?
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185156
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
советую ознакомится с структурой документа word
и интерфейсом для доступа к нему.
практически до всего доступ с помощью коллекции.
Есть колекции для разных целей, например коллекция
абзацев, коллекция слов, таблиц, картинок...
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185170
Фотография Green2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
надо найти Microsoft Word Objects
и посмотреть что зачем.
--



Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34185403
Фотография Antonariy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Запускаем Word - Alt+F11 - F2 - F1, F1, F1.....
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186046
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
тынць
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186588
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Ex_Soft] тынць

Я сделал макрос, однако поиск не переводит курсор на найденной место и не выделяет его, что является определяющим, так как на найденное место необходимо вставить картинку ! может кто нить знает как получить позицию найденного слова в документе и перевести туда курсор ?
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186702
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Sub Test()
    Selection.Find.ClearFormatting
    With Selection.Find
        .Text = "3"
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute
    Selection.InlineShapes.AddPicture FileName:="F:\My_Doc\avatara.gif", LinkToFile:=False, SaveWithDocument:=True
End Sub
так делаете? код привидите...

тынць Тока по словам прыгать... Заюзайте bookmark'и...
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186796
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
<html>
  <head>
    <title>Test M$ Word</title>
<script type="text/javascript">
<!--
function TestCOM()
{
   var
     oFS=null,
     SignatureDoc="E:\\Soft.src\\JavaScript\\Test\\COM\\Word_tst.doc",
     OutputDoc="E:\\Soft.src\\JavaScript\\Test\\COM\\Word_out.doc",
     MSWordExists,
     OpenOfficeOrgExists,
     MSWord=null,
     Document=null,
     Bookmarks=null,
     wdGoToBookmark=- 1 , // 0xFFFFFFFF
     wdGoToFirst= 1 ,
     wdGoToAbsolute= 1 ,
     BookmarkName="MyBookmark",
     TEST_BOOKMARK_BY_BOOKMARKS_COLLECTION=false,
     Bookmark;

   if(!(oFS=new ActiveXObject("Scripting.FileSystemObject")))
   {
      alert("!Scripting.FileSystemObject");
      return;
   }

   if(!oFS.FileExists(SignatureDoc))
   {
      alert("!FileExists");
      return;
   }

   try
   {
      MSWord=new ActiveXObject("com.sun.star.ServiceManager");
      OpenOfficeOrgExists=true;
   }
   catch(Exception)
   {
      alert(Exception.name+": "+Exception.message);
      alert(MSWord);
      OpenOfficeOrgExists=false;
   }

   MSWord=null;
   //alert( 1 );
   //MSWord=GetObject("e:\\Test1.doc","Word.Application");
   //alert( 2 );
   //
   // PRB: Cannot Call GetObject from Script in IE to Access Running Object
   // http://support.microsoft.com/kb/q239470/
   //

   if(!MSWord)
   {
      try
      {
         MSWord=new ActiveXObject("Word.Application");
         MSWordExists=true;
      }
      catch(Exception)
      {
         alert(Exception.name+": "+Exception.message);
         MSWordExists=false;
      }
   }

   if(!MSWord)
   {
      alert("!Word.Application");
      return;
   }

   MSWord.Visible=true;

   if(!(Document=MSWord.Documents.Open(SignatureDoc)))
   {
      alert("!Document");
      return;
   }

   Document.PageSetup.TopMargin=MSWord.CentimetersToPoints( 10 );

   if(!(Bookmarks=Document.Bookmarks))
   {
      alert("!Bookmarks");
      return;
   }

   //alert("Bookmarks.Count="+Bookmarks.Count);
   if(Bookmarks.Exists(BookmarkName))
   {
      if(TEST_BOOKMARK_BY_BOOKMARKS_COLLECTION)
      {
         Bookmark=Bookmarks.Item(BookmarkName);
         // ||
         //Bookmark=Bookmarks.Item( 1 );
         Bookmark.Select();
      }
      else
      {
         MSWord.Selection.GoTo(/*What*/ wdGoToBookmark, /*Which*/  0  /*wdGoToFirst*/, /*Count*/  0 , /*Name*/ BookmarkName);
      }

      MSWord.Selection.TypeText(document.getElementById("Input1").value);
      MSWord.Selection.InlineShapes.AddPicture("F:\\My_Doc\\avatara.gif",false,true);
   }
   
   MSWord.ActiveDocument.SaveAs(OutputDoc);
   MSWord.ActiveDocument.PrintOut(false, 0 , 0 ,"","","", 0 , 3 );
   MSWord.ActiveDocument.Close();
   MSWord.Quit();

   alert("oB!!!");
}
// -->
</script>
  </head>
  <body onload="TestCOM()">
    <form>
      <input type="text" id="Input1" value="123456789">
    </form>
  </body>
</html>
вставляет
без проблем
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186804
RAte
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Первый вариант:
var oWord = new ActiveXObject("Word.Application");
var oDoc = oWord.Documents.Add("C:\1.doc");

oDoc.Content.Find.ClearFormatting();
oDoc.Content.Find.Text = "111";
oDoc.Content.Find.Replacement.Text = "";
oDoc.Content.Find.Forward = true;
oDoc.Content.Find.Wrap = 2;
oDoc.Content.Find.Format = false;
oDoc.Content.Find.MatchCase = false;
oDoc.Content.Find.MatchWholeWord = false;
oDoc.Content.Find.MatchWildcards = false;
oDoc.Content.Find.MatchSoundsLike = false;
oDoc.Content.Find.MatchAllWordForms = false;
oDoc.Content.Find.Execute();
oDoc.Content.InlineShapes.AddPicture(C:\1.bmp"),false,true);

Результат: картинка вставляется в начало первой строки
Причем oDoc.Content.Find.Execute() = false


Второй вариант:

var oWord = new ActiveXObject("Word.Application");
var oDoc = oWord.Documents.Add("C:\1.doc");
oDoc.Content.Find.Execute("test", false, false, false, false, false, true, false, "111", false, 3);

Результат: происходит замена всех "test" на "111"

Третий вариант:

var oWord = new ActiveXObject("Word.Application");
var oDoc = oWord.Documents.Add("C:\1.doc");

oDoc.Content.Find.Execute("test");
oDoc.Content.InlineShapes.AddPicture(C:\1.bmp"),false,true);

Результат: oDoc.Content.Find.Execute("test") возвращает true, однако картинка вставляется в начало первой строки
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186860
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ex_Soft
Заюзайте bookmark'и

Ex_Soft
вставляет
без проблем

и куда нуна

С Find'ом сто лет не работал - по специфике много было повторений в тексте - неоднозначность получалась. По сему: bookmark'и - рулез фореве

_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
Поиск и замена в файле MS Word???
    #34186897
Фотография Ex_Soft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
BTW, м.б. EditFind вместо Find попробовать заюзать?
_________________
"Helo, word!" - 17 errors 56 warnings
...
Рейтинг: 0 / 0
24 сообщений из 24, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Поиск и замена в файле MS Word???
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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