Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  | Правила  

Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2007 - [решено] Долго открываются документы MS Word.

Ответить
Настройки темы
2007 - [решено] Долго открываются документы MS Word.

Пользователь


Сообщения: 54
Благодарности: 0

Профиль | Отправить PM | Цитировать


Есть 2 компа, к одному подключен принтер, но сейчас за ним никто не сидит. Проблема в том, что если этот комп выключен, то на втором вордовские файлы очень долго открываются. Если отключить сеть, то все нормализуется. Если выключить принтер, то долго грузится только 1 раз для каждого документа, а все последующие загрузки этого дока проходят быстро. Если включить комп с принтером, то все грузится быстро. Если отключить службу "Очередь печати" то тоже все норм.
Вопрос: почему?

Отправлено: 08:09, 25-05-2011

 

Пользователь


Сообщения: 88
Благодарности: 3

Профиль | Отправить PM | Цитировать


Iska

Цитата Iska:
То есть, когда Вы удаляете данный путь в диалоговом окне и сохраняете документ, то при следующем открытии этого документа там содержится путь к «normal.dotx», так?
Да, именно так и всё очень быстро открывается. ( Ну он не полный путь пишет конечно, который по умолчанию в случае Office 2007 - "C:\Users\UserName\AppData\Roaming\Microsoft\Шаблоны", а просто Normal.dotm)

Цитата Iska:
Можно попробовать написать макрос/скрипт. Как Вам удобнее будет указать все эти файлы?
А как лучше? Может быть по расширению?

With Best Regards
Brainiacs

Отправлено: 18:12, 07-02-2012 | #11



Для отключения данного рекламного блока вам необходимо зарегистрироваться или войти с учетной записью социальной сети.

Если же вы забыли свой пароль на форуме, то воспользуйтесь данной ссылкой для восстановления пароля.


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Brainiacs:
Да, именно так и всё очень быстро открывается. ( Ну он не полный путь пишет конечно, который по умолчанию в случае Office 2007 - "C:\Users\UserName\AppData\Roaming\Microsoft\Шаблоны", а просто Normal.dotm) »
Спасибо, ясно. Проверил — можно попробовать сделать. Примерный код прост донельзя:
Код: Выделить весь код
    With ActiveDocument
        .AttachedTemplate = ""
        .Save
    End With
Уточните следующее…
Цитата Iska:
Как Вам удобнее будет указать все эти файлы? »
Я имел в виду:

1) как расположены эти документы:

* в одной папке;
* в нескольких папках;
* в одной папке и вложенных в неё;
* разбросаны произвольно по всему дисковому пространству?

2) как эти документы (с присоединённым шаблоном:
Цитата Petya V4sechkin:
\\fileserver2\USERS$\sba\My Documents\Brand Manual\Brand Manual\templates Norit russia\Templates NV\Norit NV - brief - ENG, V060403.dot »
соотносятся своим расположением с другими документами Word?

3) Данный шаблон единственный (тогда можно перебирать всё подряд, ориентируясь на точное имя шаблона) или может статься, могут быть и другие «тормозящие» документы с иным несуществующим шаблоном?

Проще говоря — каким образом указать эти документы среди прочих файлов наиболее удобным для Вас способом. Вы ведь не будете тысячу раз выбирать в диалоговом окне «Open File» по одному документу ?!

Отправлено: 18:48, 07-02-2012 | #12


Пользователь


Сообщения: 88
Благодарности: 3

Профиль | Отправить PM | Цитировать


Iska

Цитата Iska:
Я имел в виду: 1) как расположены эти документы: * в одной папке; * в нескольких папках; * в одной папке и вложенных в неё; * разбросаны произвольно по всему дисковому пространству?
Собственно, чтобы упростить задачу, я могу собрать их все, в одной папке, они конечно же в свою очередь разбросаны по всяким папкам!!!

Цитата Iska:
2) как эти документы (с присоединённым шаблоном:
Безусловно с некоторыми из этих файлов, находятся и нормальные!!!

Цитата Iska:
3) Данный шаблон единственный......
А вот этот вариант, я думаю самый правильный, т.к. если найдется документ с другим шаблоном, то в скрипте (как я понимаю)
можно будет заменить имя шаблона на нужное (и мало того использовать его для какого-нибудь другого массового изменений вордовских файлов) !!!!
Так как я не думаю, что найдется ещё один "гений"(P.S. а как бы Вы его назвали, в ПМ))) ) , который в документах предназначенных
не только для внутреннего обмена будет указывать сетевой путь для шаблона (единственное конечно, что он мог несколько шаблонов сделать - ну да ладно)

Ну и к делу: если написание скрипта не очень времязатратно, я бы был очень благодарен Вам (ну и безусловно с меня пиво - уже), если бы Вы помогли решить эту, я бы сказал не проблему, а глупость?!?!

With Best Regards
Brainiacs

Последний раз редактировалось Brainiacs, 08-02-2012 в 09:47.


Отправлено: 03:31, 08-02-2012 | #13


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Brainiacs:
Собственно, чтобы упростить задачу, я могу собрать их все, в одной папке, они конечно же в свою очередь разбросаны по всяким папкам!!! »
Раз Вы можете проделать такое — я предложу следующее решение: собрать все пути к потребным файлам в текстовый файл (который уже и будет обрабатывать скрипт/макрос).

Сделать сие можно с помощью какого-либо стороннего файлового менеджера, например, Far Manager'а или Total Commander'а, або с помощью какого-либо расширения контекстного меню, позволяющего скопировать из результатов поиска Windows пути к файлам, например, Open++ или FileMenu Tools и т.п (в случае поиска Windows у меня, к сожалению, в список попадают и документы из zip-архивов).

Одним словом, у Вас должен получиться в итоге текстовый файл в кодировке ANSI примерно такого вида:
Код: Выделить весь код
C:\Temp\Hello World.doc
…
…
E:\Песочница\0053\kopiya.doc
E:\Песочница\0014\0001\Обзор объекта автоматизации Photoshop.doc
в котором будут находиться пути к потребным документам.

Вот скрипт vbscript:
читать дальше »
Код: Выделить весь код
Option Explicit

Dim strDocumentList
Dim strBadTemplate
Dim strDocument

Dim objFSO
Dim objWord


strDocumentList = "E:\Песочница\0116\DocumentList.txt"
strBadTemplate  = "\\fileserver2\USERS$\sba\My Documents\Brand Manual\Brand Manual\templates Norit russia\Templates NV\Norit NV - brief - ENG, V060403.dot"


Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(strDocumentList) Then
	Set objWord = WScript.CreateObject("Word.Application")
	
	With objFSO.OpenTextFile(strDocumentList)
		Do Until .AtEndOfStream
			strDocument = .ReadLine()
			
			If objFSO.FileExists(strDocument) Then
				WScript.Echo strDocument
				
				With objWord.Documents.Open(strDocument)
					If .AttachedTemplate = strBadTemplate Then
						WScript.Echo "  Template found in document [" & strDocument & "]"
						
						.AttachedTemplate = "Normal.dotm"
						.Save
					End If
					
					.Close
				End With
			Else
				WScript.Echo "Document [" & strDocument & "] not found"
			End If
		Loop
		
		.Close
	End With
	
	objWord.Quit
	
	Set objWord = Nothing
Else
	WScript.Echo "Document list [" & strDocumentList & "] not found"
End If

Set objFSO = Nothing

WScript.Quit 0

Укажите в нём в переменной «strDocumentList» путь к Вашему файл-списку с собранными документами и попробуйте.

Отправлено: 16:26, 11-02-2012 | #14


Пользователь


Сообщения: 88
Благодарности: 3

Профиль | Отправить PM | Цитировать


Iska

Не работает, что-то скриптик! Файл он открывает, но шаблон не удаляет и не заменяет!
И ещё он когда echo отрабатывает, это ж надо будет на каждый файл "ок" нажимать, иначе он дальше не идет!!!

Пробовал, я .AttachedTemplate вместо "Normal.dotm" --> " ", ворд (visual basic) так делает когда просто стираешь путь к шаблону, но тоже не помогает!
Как-то надо просто удалить путь к шаблоны и сохранить файл, и ворд потом при открытии сам к "Normal.dotm" обратиться!

P.S.

Я надеюсь Вы не против, я разместил Ваш скриптик, ещё на нескольких форумах, для доработки!
Если против, могу удалить?!


With Best Regards
Brainiacs

Последний раз редактировалось Brainiacs, 14-02-2012 в 11:40.


Отправлено: 09:22, 14-02-2012 | #15


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Brainiacs:
И ещё он когда echo отрабатывает, это ж надо будет на каждый файл "ок" нажимать, иначе он дальше не идет!!! »
Brainiacs, у меня есть хорошая привычка запускать скрипты в консоли, чего и Вам желаю:
Код: Выделить весь код
cscript.exe //nologo "<Путь к скрипту>"
Цитата Brainiacs:
Не работает, что-то скриптик! Файл он открывает, но шаблон не удаляет и не заменяет! »
1. А он хоть находит-то документы с шаблоном? То есть пишет хоть иногда «Template found in document [bla-bla-bla]»?
2. Если пишет, то попробуйте следующие варианты:
* именно пустую строку, а не пробел:
Код: Выделить весь код
.AttachedTemplate = ""
* полный путь к «Normal.dotm»:
Код: Выделить весь код
.AttachedTemplate = "C:\Users\UserName\AppData\Roaming\Microsoft\Шаблоны\Normal.dotm"
подставив вместо «UserName» конкретное значение.

Цитата Brainiacs:
Я надеюсь Вы не против, я разместил Ваш скриптик, ещё на нескольких форумах, для доработки!
Если против, могу удалить?! »
Ничуть. Только за. Ибо у меня-то нет Office 2007, я пробую на предыдущей версии.

Отправлено: 17:11, 14-02-2012 | #16


Пользователь


Сообщения: 88
Благодарности: 3

Профиль | Отправить PM | Цитировать


Цитата Iska:
у меня есть хорошая привычка запускать скрипты в консоли, чего и Вам желаю:
Понял!

Цитата Iska:
1. А он хоть находит-то документы с шаблоном? То есть пишет хоть иногда «Template found in document [bla-bla-bla]»?
Да файл он находит, открывает его и закрывает, ничего не меняется (дата изменения не меняется, как будто бы просто - открыл/закрыл)!



пишет только см. скрин

Цитата Iska:
2. Если пишет, то попробуйте следующие варианты:
Никакой из вариантов - не работает!

With Best Regards
Brainiacs

Отправлено: 09:54, 15-02-2012 | #17


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Значит, не находит. Ибо, если бы нашёл — писал бы ещё кроме пути, как я уже сказал выше, следующее:
Цитата:
Template found in document [bla-bla-bla]
Давайте-ка посмотрим, какие на самом деле там прикреплённые шаблоны. Выполните такой скрипт:
Код: Выделить весь код
Option Explicit

Dim strDocumentList
Dim strDocument

Dim objFSO
Dim objWord


strDocumentList = "E:\Песочница\0116\DocumentList.txt"


Set objFSO = WScript.CreateObject("Scripting.FileSystemObject")

If objFSO.FileExists(strDocumentList) Then
	Set objWord = WScript.CreateObject("Word.Application")
	
	With objFSO.OpenTextFile(strDocumentList)
		Do Until .AtEndOfStream
			strDocument = .ReadLine()
			
			If objFSO.FileExists(strDocument) Then
				WScript.Echo strDocument
				
				With objWord.Documents.Open(strDocument)
					WScript.Echo "  " & .AttachedTemplate
					
					.Close
				End With
			Else
				WScript.Echo "Document [" & strDocument & "] not found"
			End If
		Loop
		
		.Close
	End With
	
	objWord.Quit
	
	Set objWord = Nothing
Else
	WScript.Echo "Document list [" & strDocumentList & "] not found"
End If

Set objFSO = Nothing

WScript.Quit 0
в виде:
Код: Выделить весь код
cscript.exe //nologo "<Путь к скрипту>" >c:\0001.txt
опять указав в «strDocumentList» путь к Вашему списку. Полученный в результате исполнения скрипта файл «c:\0001.txt» упакуйте в архив и прикрепите к сообщению (либо выложите на обменник, а сюда — ссылку).

Отправлено: 15:33, 15-02-2012 | #18


Пользователь


Сообщения: 88
Благодарности: 3

Профиль | Отправить PM | Цитировать


Изображения
Тип файла: jpg jan.jpg
(2.0 Kb, 6 просмотров)
Вложения
Тип файла: txt 0001.txt
(35 байт, 7 просмотров)

Цитата Iska:
Значит, не находит. Ибо, если бы нашёл — писал бы ещё кроме пути, как я уже сказал выше, следующее:
Да нет, всё он находит, файл открывает (я вижу это т.к. создаётся темповский файл ворда см. аттач) но не меняется дата изменения, такое впечатление, что он его просто закрывает и открывает!!!

Ваш последний скриптик выдаёт следующее:


Только там не normal.dotm, а \\fileserver2\USERS$\sba\My Documents\Brand Manual\Brand Manual\templates Norit russia\Templates NV\Norit NV - brief - ENG, V060403.dot!!!!!

With Best Regards
Brainiacs

Отправлено: 09:23, 21-02-2012 | #19


Ветеран


Сообщения: 27449
Благодарности: 8086

Профиль | Отправить PM | Цитировать


Цитата Brainiacs:
Да нет, всё он находит, файл открывает (я вижу это т.к. создаётся темповский файл ворда см. аттач) но не меняется дата изменения, такое впечатление, что он его просто закрывает и открывает!!! »
Естественно. Скрипт не будет ничего менять-сохранять, пока ему не попадётся документ с искомым присоединённым шаблоном.

Цитата Brainiacs:
Только там не normal.dotm, а \\fileserver2\USERS$\sba\My Documents\Brand Manual\Brand Manual\templates Norit russia\Templates NV\Norit NV - brief - ENG, V060403.dot!!!!! »
Brainiacs, вот я и хочу увидеть этот самый:
Цитата Brainiacs:
\\fileserver2\USERS$\sba\My Documents\Brand Manual\Brand Manual\templates Norit russia\Templates NV\Norit NV - brief - ENG, V060403.dot »
во вложенном файле «0001.txt». Но не вижу.

«Натравите» скрипт из #18 на полный список документов, а не на один-единственный документ.

Отправлено: 09:33, 21-02-2012 | #20



Компьютерный форум OSzone.net » Сфера Microsoft » Microsoft Office (Word, Excel, Outlook и т.д.) » 2007 - [решено] Долго открываются документы MS Word.

Участник сейчас на форуме Участник сейчас на форуме Участник вне форума Участник вне форума Автор темы Автор темы Шапка темы Сообщение прикреплено

Похожие темы
Название темы Автор Информация о форуме Ответов Последнее сообщение
2003/XP/2000 - [решено] MS Office Word 2003 рабочие документы открываются чистые B100D Microsoft Office (Word, Excel, Outlook и т.д.) 17 12-05-2011 09:24
Разное - Windows XP SP2 и MS Office 2000 Долго открываются документы. Orgalit Microsoft Windows 2000/XP 1 17-12-2010 19:59
Разное - Долго открываются папки. predator13juve Microsoft Windows 2000/XP 15 29-08-2009 18:38
[решено] Медленно открываются документы MS Ofifce на сервере терминалов Bugs Microsoft Windows NT/2000/2003 9 26-03-2009 10:52
OpenOffice и документы Word Excel.... Кирилица borolgin Программное обеспечение Linux и FreeBSD 3 19-08-2008 13:43




 
Переход