Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Microsoft Office (Word, Excel, Outlook и т.д.) (http://forum.oszone.net/forumdisplay.php?f=115)
-   -   [решено] Как создать подробную обновляемую информацию о документе в полях экспресс блоков? (http://forum.oszone.net/showthread.php?t=325269)

BolgarchukR 27-03-2017 20:09 2723558

Как создать подробную обновляемую информацию о документе в полях экспресс блоков?
 
Вложений: 1
Подскажите пожалуйста, как можно добавить в сам документ с помощью экспресс блоков разные данные о документе. Нашел как добавлять количество страниц, размер, дату редактирования. Но вставить вот это поле { = { NUMCHARS } / { NUMWORDS } } типа "= (Formula)" вычисляет среднюю длину слова путем деления числа знаков на число слов. Почему-то не удается. Я в этом не силен, если у кого есть возможность расскажите подробнее, как и куда вставлять эту формулу. У меня почему-то ни в 10 ни в 2013 или 2016 не срабатывает. Т.е. готовые я могу добавлять, а как вставить такую формулу? Еще хотелось бы что бы можно было вывести данные о количестве изображений в документе и количестве гиперссылок. Опять же не знаю, как это сделать. Ключевые слова… Ну это уже совсем наверно не возможно… Или возможно?
П.с. постараюсь прикрепить документ с тем что у меня уже получилось. Может кому-то пригодится и для наглядности.

Iska 27-03-2017 21:27 2723583

Цитата:

Цитата BolgarchukR
Т.е. готовые я могу добавлять, а как вставить такую формулу? »

Скрытый текст

Вставили поле Формула, переключились в режим отображения кодов полей и поместили курсор ввода внутрь вставленной формулы (1), ввели ручками NUMCHARS (2), выделили NUMCHARS (3), нажали Ctrl-F9, преобразовав текст в поле (4), ввели символ /, ввели ручками NUMWORDS (5), выделили NUMWORDS (6), нажали Ctrl-F9 (7). Обновили поле (8), переключились в режим отображения значений полей (9).

Кстати, поле формулы можно вводить так же — сначала ввести =, затем выделить его и нажать Ctrl-F9. Делать это можно как до создания внутренних полей, так и после.

Цитата:

Цитата BolgarchukR
Еще хотелось бы что бы можно было вывести данные о количестве изображений в документе и количестве гиперссылок. »

Боюсь, что полями такого не сделать, если токмо не появились новые свойства у документа, або новые поля. Можно вставить потребное макросом, но это будет просто необновляемый автоматически текст.

Цитата:

Цитата BolgarchukR
Ключевые слова… Ну это уже совсем наверно не возможно… Или возможно? »

Так есть же поле Keywords.

BolgarchukR 30-03-2017 17:50 2724445

Ах вот оно как. Весь фокус в Ctrl-F9. А я скобочки руками писал и думаю чего оно у меня не работает )))
Спасибо!
Не. Макрасом не хочется. Поля в данном случае, на мой взгляд более элегантное решение.
Цитата:

Цитата Iska
Так есть же поле Keywords. »

Плохо что все они эти поля по английскому. Пока догадаешься какое что значит. Может где то есть русский перевод, список всех полей?

Iska 30-03-2017 18:08 2724449

В 2003-м вот так:
Скрытый текст

И справка:
Скрытый текст

В новых версиях разве нет чего-либо подобного?

BolgarchukR 07-04-2017 11:31 2727022

Цитата:

Цитата Iska
Так есть же поле Keywords. »

он добавляет ключевые слова из свойств документа. Т.е., насколько я понял, их надо как то ручками туда вписать, поправьте, пожалуйста, если не прав. Но хотелось бы это делать не в ручную, а автоматический. Как к примеру в програмке Wordstat или в идеале как на сайте https://advego.ru/text/seo/ . Конечно можно копировать не большие тексты и получать данную информацию от туда, но все же это не всегда приемлемо. Можно ли как то реализовать хотя бы некоторые функции прямо в ворде? Например, интересует «Количество уникальных слов», «Количество грамматических ошибок». И собственно десяток ключевых слов. Например, в шапке данной темы 4 раза встречается слово «документ», поэтому оно ключевое. Естественно союзы, предлоги и т.д. не учитываются.

Iska 07-04-2017 12:29 2727049

BolgarchukR, я Вас понял. Это банальный статистический анализ, собственно, к ключевым словам отношения не имеющий. Заявка на «семантический» — это, конечно, сильно сказано. И «документ» никак не может служить ключевым словом для шапки.

BolgarchukR 07-04-2017 21:46 2727302

Iska, ну если не семантический, то хотя бы статистический анализ подвластен ворду? Или до сих про приходится пользоваться сторонним софтом?
Цитата:

Цитата Iska
И «документ» никак не может служить ключевым словом для шапки. »

может я не правильно выразился, извиняюсь. Постоянно почему-то думал что ключевые слова, это какие то уникальные слова которые часто встречаются в тексте. Ради примера скопировал текст сообщения из шапки, вставил его по ссылке выше и мне выдало что слово "документ" встречается больше всего. Естественно, на сколько я понял оно не учитывало предлоги, междометия и т.д.
Может в будущих версиях с ворда сделают таки полноценный текстовой процессор. Вроде задача не хитрая раз на сайте можно текст проанализировать. А нет, и на том спасибо. Буду гуглить «семантический» анализ и надеяться на разработчиков...

Iska 08-04-2017 01:15 2727372

Цитата:

Цитата BolgarchukR
ну если не семантический, то хотя бы статистический анализ подвластен ворду? »

Не интересовался.

Цитата:

Цитата BolgarchukR
Или до сих про приходится пользоваться сторонним софтом? »

Наверняка есть какие-нибудь сторонние надстройки к нему.

Цитата:

Цитата BolgarchukR
почему-то думал что ключевые слова, это какие то уникальные слова которые часто встречаются в тексте »

Нет. Откройте блог Вадима: Вадим Стеркин – Think Outside the Box!. Видите:
Скрытый текст
к каждому сообщению прикреплено даже два вида рубрикатора: рубрики и метки. И там, и там — ключевые слова. Рубрики позволяют получить более общий срез, а метки действуют как привязанные тэги. Вот это и есть ключевые слова — то, что позволяет делать срез, отбор потребных сущностей (в данном случае — отдельных сообщений в блоге) среди прочих. Тому же самому служат метатэги keywords в html-документах.

Цитата:

Цитата BolgarchukR
Вроде задача не хитрая раз на сайте можно текст проанализировать. А нет, и на том спасибо. Буду гуглить «семантический» анализ и надеяться на разработчиков... »

Коллега, приличный семантический анализ пока может сделать только человек. Ручками. И никаких подвижек в этом плане не предвидится. Автоматизиция здесь в лучшем случае может только слегка облегчить задачу. Никакие ново- и старомодные концепции и средства недо-AI никак не помогут.

Впрочем, если Вас не интересует конечный результат — то ищите, и обрящите: Остапов Бендеров на этом поприще навалом.

BolgarchukR 14-04-2017 12:29 2729209

Iska, спасибо за развернутый ответ. Не хочется открывать новую тему из за мелких нюансов, подскажите пожалуйста еще такой момент: есть поле DOCPROPERTY TotalEditingTime \* MERGEFORMAT Общее время редактирования (total editing time). Искал не где не нашел 1 - в чем оно? В минутах, секундах, часах? И второй вопрос, подскажите пожалуйста, можно как то его изменить. Например написать 2 часа 11 мин. Т.е. вставить формулу которая переводит минуты в часы, часы в дни. Или может как то проще реализовать данную идею. Так же хотелось бы без макросов. Что бы это было обновляемое поле.

Iska 14-04-2017 16:36 2729279

Цитата:

Цитата BolgarchukR
Искал не где не нашел 1 - в чем оно? В минутах, секундах, часах? »

В минутах. Откройте документ, который Вы явным образом редактировали больше часа. Вставьте данное поле. Обновите. И посмотрите, что получилось ;).

Цитата:

Цитата BolgarchukR
можно как то его изменить. Например написать 2 часа 11 мин. »

Код:

{=INT({DOCPROPERTY TotalEditingTime} / 60 ) \# "0 'ч.'} {={DOCPROPERTY TotalEditingTime} - INT({DOCPROPERTY TotalEditingTime} / 60 ) * 60 \# "0 'мин.'}
Скрытый текст



Помните, что фигурные скобки добавляются не руками? Я их привёл для синтаксиса. Вы действуете обычным образом: скопировали код, вставили в документ, удалили фигурные скобки при первом поле:
Код:

{=INT({DOCPROPERTY TotalEditingTime} / 60 ) \# "0 'ч.'} {={DOCPROPERTY TotalEditingTime} - INT({DOCPROPERTY TotalEditingTime} / 60 ) * 60 \# "0 'мин.'}
выделили будущее содержимое поля:
Код:

{=INT(DOCPROPERTY TotalEditingTime / 60 ) \# "0 'ч.'} {={DOCPROPERTY TotalEditingTime} - INT({DOCPROPERTY TotalEditingTime} / 60 ) * 60 \# "0 'мин.'}
нажали Ctrl-F9, получили поле. Далее действуете таким же образом — сначала создаёте внутренние поля, затем обрамляющие их.

BolgarchukR 14-04-2017 22:07 2729386

Спасибо! Сработало. Хотя, не с первого раза. Жаль, что нельзя копировать рабочий код и просто его вставлять, приходится делать по кусочкам. Впрочем, если сильно захочется поделиться уже готовым, то думаю можно сделать документ типа такого как я дал в шапке. Но все токи важнее разобраться в принципах работы и делать самому. Интересно, какие еще полезные возможности скрывают поля. Надо будет поискать как выводить стандартную статистику, та что доступна при нажатии на "число слов". Я пока нашел как полями добавлять "число знаков без пробелов" { NUMCHARS \* Arabic \* MERGEFORMAT }, еще поищу как добавить "число знаков с пробелами", количество абзацев и строк.

Iska 14-04-2017 22:51 2729394

Цитата:

Цитата BolgarchukR
Жаль, что нельзя копировать рабочий код и просто его вставлять »

Обратное — как скопировать его с Word'а — тоже верно :). При попытке копирования, Word помещает в буфер обмена множество форматов:
Скрытый текст
но простого, банального текста, который бы можно было просто взять и вставить в виде готового кода на форуме — нетути :(. Так и приходится ручками набивать.

Можно, конечно, выцарапывать кусочки из форматов RTF или HTML, но это будет ещё медленнее.

BolgarchukR 18-04-2017 12:03 2730302

Цитата:

Цитата Iska
Обратное — как скопировать его с Word'а — тоже верно »

Да, увы... Наверно пока лучший вариант решения данной проблемы это делится готовыми документами с кодом. А при необходимости обсудить код копировать его и распознавать скринсервером файнридера.
У меня еще возникла необходимость вывести в данном поле путь к документу. Есть FILENAME \p \* MERGEFORMAT показывающий и путь, и имя документа. Есть просто FILENAME \ * MERGEFORMAT показывающий одно только имя файла. А как вывести путь без имени? Это могло бы быть полезно, к примеру, для использования данного поля в макросах и актокликерах. Тогда когда понадобиться открыть не файл, а именно путь где он расположен. Т.е. можно скопировать данное поле вставить в адресную строку, и откроется соответствующая папка. Если же брать с именем, то откроется не папка а файл. Как удалить имя с пути?

Iska 18-04-2017 13:30 2730327

BolgarchukR, не вижу вариантов решения без участия макроса.

BolgarchukR 20-04-2017 19:17 2731076

Вложений: 1
Может кому надо попробую прикрепить файл в котором по аналогии сделал возможность показывать в днях часах и минутах редактирование, и более удобный рзамер файла. Вроде создать такой код, дело не хитрое, но пришлось помучатся.
Цитата:

Цитата Iska
не вижу вариантов решения без участия макроса »

Жаль. Ну тогда, если не затруднит дайте пожалуйста макрос. А то я в них не силен.

Iska 21-04-2017 23:19 2731361

Цитата:

Цитата BolgarchukR
дайте пожалуйста макрос.»

Код:

Option Explicit

Sub InsertDocumentPath()
    If Len(Trim(ActiveDocument.Path)) > 0 Then
        With Selection
            .Collapse wdCollapseStart
           
            If .Type = wdSelectionIP Then
                .InsertAfter ActiveDocument.Path
            End If
        End With
    Else
        MsgBox "Save new document before using macro", vbInformation + vbOKOnly, "New document"
    End If
End Sub



Время: 18:59.

Время: 18:59.
© OSzone.net 2001-