<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
	<channel>
		<title><![CDATA[Серый форум &mdash; VBS: Поиск документа Word по ключевым словам в документе]]></title>
		<link>https://forum.script-coding.com/viewtopic.php?id=11694</link>
		<atom:link href="https://forum.script-coding.com/extern.php?action=feed&amp;tid=11694&amp;type=rss" rel="self" type="application/rss+xml" />
		<description><![CDATA[Недавние сообщения в теме «VBS: Поиск документа Word по ключевым словам в документе».]]></description>
		<lastBuildDate>Thu, 09 Jun 2016 19:27:25 +0000</lastBuildDate>
		<generator>PunBB</generator>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105051#p105051</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br />Если брать VBS, я бы начал с <a href="http://narfu.ru/university/library/books/0693.pdf">Грошева</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Thu, 09 Jun 2016 19:27:25 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105051#p105051</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105050#p105050</link>
			<description><![CDATA[<p><strong>Flasher</strong>, спасибо! <br />Скачал учебник Гюнтера Борна &quot;Microsoft Windows Script Host 2.0. Руководство разработчика&quot;, буду грызть гранит науки.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Thu, 09 Jun 2016 19:16:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105050#p105050</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105048#p105048</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br />Почему мы? Код прочёл, там всё доходчиво.</p><p>Поди, английский - второй родной, коли учебник на нём <span class="bbu">понятный</span>? <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" /> Да и форум - это не учебник всё-таки.<br />Поиск стоило бы начать <a href="http://script-coding.com/">отсюда</a>, <a href="http://forum.script-coding.com/viewtopic.php?id=10">отсюда</a> и <a href="http://safezone.cc/threads/literatura-po-vbscript-jscript.23825/">отсюда</a>, ну, и <a href="http://gsbelarus.com/gs/wiki/index.php/VBScript._%D0%9E%D1%81%D0%BD%D0%BE%D0%B2%D1%8B_VBScript">сюда</a>/<a href="http://gsbelarus.com/gs/wiki/index.php/VBScript._%D0%9F%D1%80%D0%B5%D0%B4%D0%BE%D0%BF%D1%80%D0%B5%D0%B4%D0%B5%D0%BB%D0%B5%D0%BD%D0%BD%D1%8B%D0%B5_%D0%BA%D0%BE%D0%BD%D1%81%D1%82%D0%B0%D0%BD%D1%82%D1%8B">сюда</a> зайти не помешает. <a href="http://citforum.ru/internet/vbscript/vbscript1.shtml">Сравнение</a> (<a href="http://www.compdoc.ru/internet/vbscript/progbases/">аналог</a>). <a href="http://www.compdoc.ru/internet/">На выбор</a>.</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Thu, 09 Jun 2016 18:52:28 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105048#p105048</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105046#p105046</link>
			<description><![CDATA[<p><strong>Flasher</strong><br />Хочу найти какой-нибудь понятный учебник по WSH, где бы мне рассказали разницу между VBS и JS на простых примерах, в таком духе. Так как я в программировании ноль мне нужен какой то указатель чтобы выбрать вектор от простого к сложному.<br />Как пример могу привести&nbsp; <a href="https://autohotkey.com/docs/AutoHotkey.htm">AHK</a> в котором материал доступно дается.<br />Что-то такое подскажите <img src="//forum.script-coding.com/img/smilies/wink.png" width="15" height="15" />. <br />	А насчет вашего кода мы поняли друг друга правильно? - я хочу чтобы скрипт искал документ в тексте которого (не в имени файла) встречается ключевое слово.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Thu, 09 Jun 2016 18:16:16 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105046#p105046</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105045#p105045</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br />Попробуте поискать в папке с кучей doc-файлов и задайте несколько популярных слов. Будет результат?<br />10-ки у меня нет. Не знаю, как там.<br />Ссылка - как ссылка. Ищите проблему на стороне антивируса. В моём браузере (даже при включённом JavaScript) никакой ругани нет. И всё же - зачем английский-то?</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Thu, 09 Jun 2016 17:32:59 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105045#p105045</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105042#p105042</link>
			<description><![CDATA[<p><strong>Flasher</strong><br />В поле выбора писал как вы сказали- не ищет. У меня Windows 10&nbsp; может поэтому не работает? А ссылку вы мне дали -антивирус ругается.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Thu, 09 Jun 2016 16:52:27 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105042#p105042</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105037#p105037</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br />Проверял. Это скорее даже маски имён. Там же пример масок указан. Если нужно одно расширение, то *.doc вводим.</p><p>Дать ссылку <a href="http://www.visualbasicscript.com/">несложно</a> (из наших там <strong>omegastripes</strong>). Только зачем? <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" /></p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Thu, 09 Jun 2016 16:19:04 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105037#p105037</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=105030#p105030</link>
			<description><![CDATA[<p><strong>Flasher</strong>, вы сами проверяли код? У меня почему то не работает. Как правильно вводить маску расширения (я вводил &quot;doc&quot;)? Предусмотрена ли рекурсия в подпапки (у меня в коде есть)? Создавал в папке документ Word, в нем писал кодовое слово,&nbsp; запускал ваш скрипт -указывал эту папку. Результат &quot;Соответствующие файлы не найдены&quot; и всегда создается пустой документ на рабочем столе с названием кодового слова. Помогите пожалуйста довести до ума ваше творение. Еще просьба, не дадите ссылку на англоязычный форум по VBS, очень буду признателен <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Thu, 09 Jun 2016 15:04:54 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=105030#p105030</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=104988#p104988</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br /></p><div class="codebox"><pre><code>Set ShAp = CreateObject(&quot;Shell.Application&quot;)
Set FSO  = CreateObject(&quot;Scripting.FileSystemObject&quot;)
IBox FiMask, &quot;маски расширений файлов&quot;, &quot;&#039;;&#039;&quot;, &quot;расширений&quot;, &quot;*.doc;*.docx;*.rtf&quot;
Set SFolder = ShAp.BrowseForFolder(0, vbCr &amp; vbCr &amp; &quot;Выберите папку для поиска:&quot;, 17, ShAp.NameSpace(&amp;H11))
If VarType(SFolder) = 9 Then WScript.Quit
IBox wd, &quot;ключевые слова&quot;, &quot;запятую&quot;, &quot;ключей&quot;, &quot;желтый,января,Иванов,563&quot;
Set oWord = CreateObject(&quot;Word.Application&quot;) : oWord.Visible = False
Name = &quot;Поиск &quot; &amp; Split(wd,&quot;,&quot;)(0) &amp; &quot;.txt&quot;
Path = ShAp.NameSpace(&amp;H0).Self.Path &amp; &quot;\&quot; &amp; Name
Set LogFile = FSO.OpenTextFile(Path, 8, True)
FFolder SFolder, Check : Title = &quot; Поиск файлов по ключевым словам&quot; : LogFile.Close
If Check Then
  If MsgBox(&quot;Поиск завершен!&quot; &amp; vbCr &amp; vbCr &amp; &quot;Данные сохранены на Рабочем столе&quot; &amp; vbCr &amp;_
  &quot;в файле &quot; &amp; Name &amp; vbCr &amp; vbCr &amp; &quot;Желаете открыть?&quot;, 4132, Title) = 6 Then ShAp.Open Path
Else MsgBox &quot;Соответствующие Файлы не найдены!&quot;, 4144, Title End If : oWord.Quit

Sub IBox(Var, Text1, Text2, Title, Val)
  Var = Trim(InputBox(String(5, vbCr) &amp; &quot;Введите &quot; &amp; Text1 &amp; &quot; через &quot; &amp; Text2 &amp; &quot;:&quot;, &quot; Ввод &quot; &amp; Title, Val))
  If Var = &quot;&quot; Then WScript.Quit
End Sub

Sub FFolder(Folder, Ch)
  Set Items = ShAp.NameSpace(Folder).Items
  Items.Filter 8256, FiMask
  For Each I In Items
    If Left(I.Name, 2) &lt;&gt; &quot;~$&quot; Then
      Set Doc = oWord.Documents.Open(I.Path, False, False)
      Set Sel = oWord.Selection
      For Each Word In Split(wd, &quot;,&quot;)
        Sel.Find.Text = Word : Sel.Find.Forward = True
        Sel.Find.MatchWholeWord = False : If Sel.Find.Execute Then _
        LogFile.WriteLine Word &amp; &quot; в &quot; &amp; I.Path : Ch = 1
      Next : Doc.Close
    End If
  Next : Items.Filter 8224, &quot;*&quot;
  For Each Fd in Items
    If FSO.FolderExists(Fd.Path) Then FFolder Fd.Path, Ch
  Next
End Sub</code></pre></div><p>Правда не уверен, что учёт для каждого документа будет многократный.</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Wed, 08 Jun 2016 19:25:22 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=104988#p104988</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=104982#p104982</link>
			<description><![CDATA[<p><strong>Flasher</strong><br />Может Return и надо было заменить на Exit (не судите строго) но эффект тот же скрипт завершает работу. По второму замечанию согласен, окно лишнее.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Wed, 08 Jun 2016 16:37:09 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=104982#p104982</guid>
		</item>
		<item>
			<title><![CDATA[Re: VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=104979#p104979</link>
			<description><![CDATA[<p><strong>sabir.yanin2014</strong><br />Не понимаю, зачем тут return-ы, коли человек закрыл окно и не хочет искать? Я всегда выхожу из скрипта в таких условиях.<br />И &quot;Все готово для поиска`nВы хотите продолжить?&quot; - это лишнее окно в стиле &quot;Вы точно уверены?&quot; тут зачем?<br />Всё остальное понятно. Не сказать, что интересно, но помочь могу.</p>]]></description>
			<author><![CDATA[null@example.com (Flasher)]]></author>
			<pubDate>Wed, 08 Jun 2016 16:20:24 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=104979#p104979</guid>
		</item>
		<item>
			<title><![CDATA[VBS: Поиск документа Word по ключевым словам в документе]]></title>
			<link>https://forum.script-coding.com/viewtopic.php?pid=104971#p104971</link>
			<description><![CDATA[<p>На AHK я написал скрипт выполняющий поиск файлов Word в папках с подпапками по содержащимся в документе<br />ключевым словам. Все бы хорошо, но на работе компьютеры согласно корпоративной политики защищены от установки посторонних программ, и AHK я не могу установить. Что если написать тот же скрипт но на языке VBS или JS (какой лучше подойдет не знаю)? Вот исходный код:<br /></p><div class="codebox"><pre><code>
InputBox, tip, Выберите тип файла, Введите расширение файла`,`nпо умолчанию &quot;doc&quot;
if tip=
tip=doc
MsgBox &quot;.%tip%&quot;
FileSelectFolder, SFolder,  ,  , Выберите папку для поиска
if SFolder=
return
InputBox, wd, Ввод ключей, Введите ключевые слова:`n(ввод через запятую-`nнапример:&quot;желтый`,января`,Иванов`,563&quot;)
if wd=
return
Loop, parse, wd, `, ;узнаем количество ключей
{
if (A_Index=1)
Name:=A_LoopField
++N1
} 
MsgBox, 4, Запуск поиска, Все готово для поиска`nВы хотите продолжить?`n(Нажмите Да или Нет)
IfMsgBox No 
return

Loop, %SFolder%\*.%tip%, , 1 ; Рекурсия в подпапки.
{
DirFile=%A_LoopFileFullPath%
oWord:=ComObjCreate(&quot;Word.Application&quot;)
Word:=oWord.Documents.Open(DirFile)
text:=word.ActiveWindow.Document.Range().Text
Word.Close()
oWord.Quit()
N2=
	Loop, parse, wd, `, ;подбираем ключи
	{
	IfInString, text, %A_LoopField%
	++N2
	}
	
	if (N2=N1)
	{
	FileAppend, %word%`n%DirFile%`n, %A_Desktop%\Поиск %Name%.txt
	Break
	}
}
if (N2=N1)
MsgBox Поиск завершен`nданные сохранены`nна рабочем столе`nв файле Поиск %Name%
else
MsgBox Файл не найден
</code></pre></div><p>Если кому то интересно, помогите преобразовать код в VBS( JS) <img src="//forum.script-coding.com/img/smilies/smile.png" width="15" height="15" />.</p>]]></description>
			<author><![CDATA[null@example.com (sabir.yanin2014)]]></author>
			<pubDate>Wed, 08 Jun 2016 15:32:08 +0000</pubDate>
			<guid>https://forum.script-coding.com/viewtopic.php?pid=104971#p104971</guid>
		</item>
	</channel>
</rss>
