|
|
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Необходимо работать из скрипта с custom properties документа. Делаю так авторSet wordApp = CreateObject("Word.Application") Set doc = wordApp.Documents.Open("c:\test.doc") у самой объектной библиотеки Word есть интерфейс CustomProperties. Но вот не пойму как получить доступ к этому интерфейсу? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.03.2008, 19:53 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
wordApp.CustomProperties не работает штоли? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 06:31 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 10:09 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
И не должно. У класса Word.Application нет свойства CustomProperties. И вообще ни у одного вордовского класса нет такого свойства. Зато у смарт-тегов есть свойство Properties, которое как раз и возвращает объект типа CustomProperties. Больше этот класс нигде не используется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 10:50 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Заодно советую автору задаться вопросом, чем интерфейс отличается от класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 10:52 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
авторЗаодно советую автору задаться вопросом, чем интерфейс отличается от класса. честно говоря не знаю, та оно меня особо и не интересует, ибо я не программист. Иногда, раз в три месяца пишу какой то простенький скрипт. 2 Antonariy Не пойму, как мне удалить определённое свойство? Делал так авторSet wordApp = CreateObject("Word.Application") Set doc = wordApp.Documents.Open("c:\test.doc") Set customProp = doc.CustomDocumentProperties Set prop = customProp.Item(1) prop.Delete() inst.Save() inst.Close() wordApp.Quit() но свойство не удаляется. Что я делаю не так? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 11:16 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 11:22 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Очепятка, конечно там doc ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 11:25 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Тогда все должно работать. ThisDocument.CustomDocumentProperties(1).Delete, выполненное из ворда, сработало. Попробуй убрать пустые скобки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 11:30 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
авторПопробуй убрать пустые скобки. К сожалению результат тот же :( Ничего не понимаю - WScript.Echo prop.Name и WScript.Echo prop.Value, выводит имя свойства и его значение, а вот удалять не хочет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 11:37 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Решил проблему, очень странное поведение. Причина была в том, что при удалении свойства документ не считался изменённым и поэтому функция doc.Save не отрабатывала. Вылечилось добавлением строки doc.Saved = False перед сохранением документа. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 13:24 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Но теперь новая проблема Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. В результате получаю вывод - 2. Откуда он берет два свойства, если я их все удалил? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.03.2008, 16:14 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Не все, их было 4. Удалять нужно начиная с последнего, иначе получается: удаляешь первый - первым становится второй, удаляешь второй - вместо него удаляется третий и т.д. В результате должна была высколчить ошибка, если бы не было On Error Resume nExt. Пиши цикл так: Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 11:54 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
Или так: Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 11:56 |
|
||
|
VB и работа с Word документами
|
|||
|---|---|---|---|
|
#18+
авторНе все, их было 4. Удалять нужно начиная с последнего, иначе получается: удаляешь первый - первым становится второй, удаляешь второй - вместо него удаляется третий и т.д. В результате должна была высколчить ошибка, если бы не было On Error Resume nExt. Странно, а почему тогда после выполнения цикла строка WScript.Echo objWorkbook.CustomDocumentProperties.Count показывала 0? авторИли так: While objWorkbook.CustomDocumentProperties.Count > 0 objWorkbook.CustomDocumentProperties.Item(1).Delete() Wend попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.03.2008, 12:38 |
|
||
|
|

start [/forum/topic.php?fid=22&fpage=341&tid=1456712]: |
0ms |
get settings: |
8ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 196ms |
| total: | 341ms |

| 0 / 0 |
