Как увеличить размер поля ввода в отчетах или формах MS Access на основе пользовательского ввода? - PullRequest
0 голосов
/ 03 ноября 2018

У меня есть текстовое поле в отчете MS Access, для которого установлено значение unbound. Я хочу иметь возможность собрать адрес в этом поле, который может быть любой длины в зависимости от адреса клиента. Я щелкнул правой кнопкой мыши на поле и установил свойство размера «To-Fit». Однако это ничего не сделало. Отчет нужно распечатать, поэтому я не могу обрезать часть адреса из-за размера текстового поля.

Есть ли способ сделать размер текстового поля динамическим?

Спасибо

1 Ответ

0 голосов
/ 03 ноября 2018

К сожалению, нет такой функции для отчетов. Для элементов управления формы вы можете использовать Horizontal Anchor, но не для отчетов.

Таким образом, у вас есть две возможности, чтобы ваш адрес не был вырезан:

1: пусть он будет расти вертикально

Для этого вам нужно установить для свойства Can grow обоих текстовых полей и содержащего раздела значение Yes.

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

2: управление через VBA

Вы можете использовать format event для управления шириной текстового поля через VBA.

Вот пример того, как это сделать, но я никогда не пробовал. К сожалению, он в формате mdb, поэтому вам понадобится более старая версия Microsoft Access (я думаю, что Microsoft Access 2007 должен быть в состоянии, 2003 наверняка), чтобы открыть ее и получить код.

http://www.lebans.com/autosize_textbox.htm

Он использует Windows API и может быть не так легко запустить его.

Что он делает (только шаги): Сначала он вычисляет ширину отображаемого текста относительно текущего шрифта, размера шрифта и его свойств. Зная это, можно изменить размер элемента управления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...