首页 > 解决方案 > 如何根据用户输入增加 MS Access 报表或表单中输入框的大小?

问题描述

我在 MS Access 报告中有一个设置为未绑定的文本框。我希望能够在该字段中收集一个地址,该地址可以是基于客户地址的任意长度。我右键单击该框并将 size 属性设置为“To-Fit”。然而,这根本没有做任何事情。需要打印报告,这就是为什么由于文本框的大小而无法截断部分地址的原因。

有没有办法使文本框的大小动态化?

谢谢

标签: vbams-access

解决方案


不幸的是,报告没有这样的功能。对于表单控件,您可以使用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,运行起来并不容易。

它的作用(只是步骤):它首先计算要显示的文本相对于当前字体、字体大小及其属性的宽度。知道这一点,可以调整控件的大小。


推荐阅读