|
Вопрос # 5 510/ вопрос открыт / |
|
Здравствуйте, уважаемые эксперты!
Как (ПРОГРАМНО) определить параметры документов Word и Excel – дата(время) создания, последнего сохранения, вывода на печать, автора, автора последнего сохранения, производителя ? Заранее благодарен.
 |
Вопрос задал: Vics (статус: Посетитель)
Вопрос отправлен: 18 июля 2011, 18:18
Состояние вопроса: открыт, ответов: 1.
|
Ответ #1. Отвечает эксперт: Шичко Игорь
Здравствуйте, Vics!
Для этого используется массив свойств BuiltInDocumentProperties
...
var
Word, Doc: variant;
autor: string;
begin
...
Word:= CreateOleObject('Word.Application');
Doc:= Word.Documents.Open('C:\my_doc\1.doc');
autor:= Doc.BuiltInDocumentProperties[3].Value; // автор
...
В приложении выкладываю все доступные свойства.
Удачи.
Приложение: Переключить в обычный режим-
-
- type
- WdBuiltInProperty = TOleEnum;
- const
-
-
-
-
-
-
-
-
-
-
-
-
- wdPropertyVBATotalEdit = $0000000D;
-
-
-
-
- wdPropertyCategory = $00000012;
- wdPropertyFormat = $00000013;
- wdPropertyManager = $00000014;
- wdPropertyCompany = $00000015;
- wdPropertyBytes = $00000016;
- wdPropertyLines = $00000017;
- wdPropertyParas = $00000018;
- wdPropertySlides = $00000019;
- wdPropertyNotes = $0000001A;
- wdPropertyHiddenSlides = $0000001B;
- wdPropertyMMClips = $0000001C;
- wdPropertyHyperlinkBase = $0000001D;
- wdPropertyCharsWSpaces = $0000001E;
-
-
 |
Ответ отправил: Шичко Игорь (статус: 9-ый класс)
Время отправки: 18 июля 2011, 21:16
Оценка за ответ: 4
|
Мини-форум вопроса
Всего сообщений: 8; последнее сообщение — 19 июля 2011, 18:50; участников в обсуждении: 3.
|
Vics (статус: Посетитель), 19 июля 2011, 10:25 [#1]:
с наскока не пошло -
Undeclared identifier 'CreateOleObject'
|
|
Vics (статус: Посетитель), 19 июля 2011, 11:11 [#2]:
Добавил в uses ComObj -пошло.
Кстати OfficeXP и WordXP нужны оба ?
И, я полагаю, на Word.Documents.Open должон быть и Close ?
Игорь, спасибо, дело пошло.
|
|
Шичко Игорь (статус: 9-ый класс), 19 июля 2011, 11:29 [#3]:
Цитата:
Игорь, спасибо, дело пошло.
И все-таки четверка за ответ?
Цитата:
И, я полагаю, на Word.Documents.Open должон быть и Close ?
Конечно.
В вопросе этого не звучало, думал это и так понятно.
Сохранить документ, закрыть документ, выйти из приложения, освободить память.
|
|
Vics (статус: Посетитель), 19 июля 2011, 13:54 [#4]:
Ну не знаю, 4 это вполне приличная оценка (по 5 бальной шкале). Но если ты так настаиваеш ... ты еще не указал модули, которые нужно подвязать. Оно и так понятно, но, может не всем.?
Кстати, закрыть документ, выйти из приложения, освободить память чет некоректно работает... и исчо -
не пашут
ни Doc.BuiltInDocumentProperties[10].Value
ни Doc.BuiltInDocumentProperties[$0000000A].Value
я даже пробовал
Doc.BuiltInDocumentProperties[9+1].Value -
'Неопознанная ошибка'. Просто даже любопытно ...
Так что 2 балла. Это мне.
|
|
Шичко Игорь (статус: 9-ый класс), 19 июля 2011, 14:49 [#5]:
Цитата:
Ну не знаю, 4 это вполне приличная оценка (по 5 бальной шкале). Но если ты так настаиваеш
Совершенно ни на чем не настаиваю. Просто вопрос прозвучал:
"Как (ПРОГРАМНО) определить параметры документов Word и Excel – дата(время) создания, последнего сохранения, вывода на печать, автора, автора последнего сохранения, производителя ? "
В моем понимании человек владеет основами программирования по Word и задает вопрос, касающийся совершенно определенного модуля (фрагмента кода) в программе.
Другое дело написать: "Как запустить (ПРОГРАММНО) приложение Word, открыть документ, определить параметры и т.п, сохранить изменения и выйти из приложения"
Ну это так в виде совета на будущее.
|
|
Vics (статус: Посетитель), 19 июля 2011, 15:30 [#6]:
Запускать приложение Word, открывать документ, изменять, сохранять необходимости нет. Это и не спрашивалось! Нужно просто снять параметры у большого количества документов. Подробно описывать свои проблемы - грузить мозги. Стараешся быть кратким ... Пойду обдумывать формулировку следующего вопроса.
За совет спасибо.
|
|
Шичко Игорь (статус: 9-ый класс), 19 июля 2011, 15:33 [#7]:
Ok. Будут вопросы - задавайте. Что-то придумаем.
|
|
Gooddy (статус: 3-ий класс), 19 июля 2011, 18:50 [#8]:
Цитата:
Стараешся быть кратким
Vics: лучше быть последовательным и предусмотрительным, чем кратким.
Чисти код! Чисти код! Чисти код!
|
Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.
|