1

Тема: Ограничение количества символов в дополнительных свойствах документа

Столкнулся с тем, что текст ,введенный в дополнительных свойствах документа, отображается в полях (которые находятся непосредственно на листе) не полностью. Если не ошибаюсь поле ограничено по объему. Максимум - 254 символа. Кто-нибудь знает как с этим бороться?

2

Re: Ограничение количества символов в дополнительных свойствах документа

Удивляюсь этому форуму:) Как только у меня появляется какой-то вопрос по Word, захожу сюда и здесь, буквально одновременно со мной, задают такой же вопрос... )
Присоединяюсь к вопросу.

3

Re: Ограничение количества символов в дополнительных свойствах документа

Прочел информацию по этой ссылке: внешняя ссылка
Ограничение длины поля Свойство документа не снять. К сожалению.
Но, вместо Свойства документа можно использовать docvariable. Минус - нет диалогового окна для работы с этими variable.

Вот пример, который взят из вышеприведенной ссылки. Результат его применения (надо макрос создать) наглядно демонстрирует, что поле docvariable может иметь длину 500 символов (в данном случае используется символ А), а docproperty нет.

"It is a restriction that can't be changed. I didn't find any official
documentation of this, but the result of the following macro makes it clear
that Word truncates the input to 255 characters:

Sub x()
Dim mystr As String
Dim myCP As DocumentProperty
mystr = String(260, "A")
ActiveDocument.CustomDocumentProperties.Add _
Name:="test1", LinkToContent:=False, _
Type:=msoPropertyTypeString, _
Value:=mystr

MsgBox Len(ActiveDocument.CustomDocumentProperties("test1").Value)
End Sub

However, there is no such restriction on document *variables*, as the result
of this similar macro shows:

Sub y()
Dim mystr As String
Dim myVar As Variable
mystr = String(500, "A")
ActiveDocument.Variables.Add _
Name:="test1", Value:=mystr

MsgBox Len(ActiveDocument.Variables("test1").Value)
End Sub

In the document, you can display the value of the variable with a field
{DOCVARIABLE test1}."

4

Re: Ограничение количества символов в дополнительных свойствах документа

Если у Вас поле в которое вставляется текст типа TextBox, то откройте его свойства и проверьте параметры:
1. MaxLength = 0. Максимальное число символов не ограничено.
2. MultiLine=True. Переносит текст по строкам
3. ScrollBars = 2. Устанавливает вертикальную полосу прокрутки.

5

Re: Ограничение количества символов в дополнительных свойствах документа

aap77 пишет:

Если у Вас поле в которое вставляется текст типа TextBox, то откройте его свойства и проверьте параметры:
1. MaxLength = 0. Максимальное число символов не ограничено.
2. MultiLine=True. Переносит текст по строкам
3. ScrollBars = 2. Устанавливает вертикальную полосу прокрутки.

Не работает.
Использовал данные параметры.
Вставил те же самые 500 символов А, при обновлении выводит только 255 символов А.

6

Re: Ограничение количества символов в дополнительных свойствах документа

gurilev пишет:

Прочел информацию по этой ссылке:

Приведенный Вами при пример вполне реален.
Записываете свойство документа в объект Variables, его свойство Value не ограничено по символам, и его мы вставляем в поле DOCVARIABLE и связываем его со свойством Name, проверил вставил почти 2000 символов

7

Re: Ограничение количества символов в дополнительных свойствах документа

Где взять этот "Variables"? Можно как нибудь пошагово объяснить как вставить в поле большое кол-во символов.
Заранее спасибо!

8

Re: Ограничение количества символов в дополнительных свойствах документа

Wer666 пишет:

Где взять этот "Variables"? Можно как нибудь пошагово объяснить как вставить в поле большое кол-во символов.
Заранее спасибо!

Я сейчас форму делаю по созданию Variable и ее связыванию с полем документа погодите немного

9

Re: Ограничение количества символов в дополнительных свойствах документа

"Записываете свойство документа в объект Variables, его свойство Value не ограничено по символам, и его мы вставляем в поле DOCVARIABLE и связываем его со свойством Name, проверил вставил почти 2000 символов"

Вот это круто. Но у меня не получилось:) Ждем:)

10

Re: Ограничение количества символов в дополнительных свойствах документа

Товарищи, форму у меня получается универсальная, поэтому пока опишу принцып действия на простом примере:
1. Свойство Variable находится в семействе Variables объекта Document.
     Код вставки, например в Активный документ:
     

Dim Varib Аs Variable
     ActiveDocument.Variables.Add [Имя], [Значение]

где
     [Имя] — имя свойства.
     [Значение] — любое строковое либо цифровое значение.
Например свойству SelText_1 присваивается значение выделенного текста.
     

Dim Varib Аs Variable
     ActiveDocument.Variables.Add "SelText_1", Selection.Text

Теперь не сложно вставить значение свойства в поле DocVariable. Вызываем окно вставки поля, выбираем Категорию "Автоматизация", поле DocVariable. Жмем Коды поля, вставляем имя SelText_1, жмем ОК.
2. При использовании Имени свойства лучше всего руководствоваться принципом, если у вас несколько переменных одной группы например Выделенный текст (SelText), то обозначать лучше SelText_1, SelText_2 и т.д., потом легко можно будет написать макрос группировки по типам. Этот же метод желательно использовать при вставке Закладок (Bookmarks).
3. В свойство Значение можно записывать не только просто строковые и цифровые данные, но и набор свойств любых объектов, потом при считывании этих свойств задавать их тому или иному объекту.

11

Re: Ограничение количества символов в дополнительных свойствах документа

Как же я иногда жалею, что я совсем не программист sad Так и не разобрался как использовать и куда вставлять этот текст  "Dim Varib Аs Variable
     ActiveDocument.Variables.Add [Имя], [Значение] " Если не трудно, черкните пару строк по этому поводу...

12

Re: Ограничение количества символов в дополнительных свойствах документа

ps: понимаю, что вопрос очень глупый...

13

Re: Ограничение количества символов в дополнительных свойствах документа

Спасибо,все получилось