访问报告“可以增长”属性需要影响相邻控件

时间:2011-11-11 19:55:04

标签: ms-access vba textbox access-vba report

我在详细信息部分有一堆控件的报告。 我正在处理作为样本提供给我的word文档,并且我几乎完美地重新访问了它。我现在需要的是一种处理文本框溢出的方法。我启用了“可以增长”,但这是真正的问题:

我有一张假桌子。多个文本框以一种在子表单中不起作用的方式排列。某些细胞具有红色,绿色或黄色背景,而其他细胞仅为纯白色。当其中一个文本字段溢出并“增长”时,同一行中的其他文本框保持与之前相同的大小,看起来非常奇怪(703缇与300)。我真的很喜欢它的工作,好像它是word / excel中的一个表,整个行会一次增长(全部= 703缇),但看到它不是字面上的“行”,我只是想要一种将这些文本框的高度相互关联的方法。

这样的事情可能吗?如果我需要澄清任何事情只是让我知道,我希望我已经提供了充足的信息。

4 个答案:

答案 0 :(得分:4)

在报告的设计视图中,选择详细信息部分中的所有文本框控件以及页眉部分中的所有标签。右键单击其中一个文本框控件,然后选择布局 - >的表格即可。控件和标签现在应该彼此对齐。

您没有设置您正在使用的Access版本,但这在Access 2007中有效。

答案 1 :(得分:2)

好的,我们走了。所以我有一个假表,我需要它在每个文本框周围有表格边框,当一个文本框比行中的其他文本框高时,边框看起来完全错误。因此,我们要做的就是在运行时直接绘制报表,这可以在任何视图中完成,包括打印预览。此代码必须放在Print事件

'step one. find out which box in the row has the greatest height value. 
'You can come across this information however you want. 
'It will likely depend on what data goes in the boxes.
'For the sake of the answer length we will skip that actual code

'step two. Take measurements and store them in variables.
'You will need a start point, and an end point in standard (x1,y1),(x2,y2) form.
Dim t As Integer 'top
Dim l As Integer 'left
Dim b As Integer 'bottom

'step three. Use these measurements and draw your lines.
'Try to use looping if your naming and report layout work will allow it.
Me.Line (l, t)-(l, b), RGB(0, 0, 0)
'       (x1,y1)(x2,y2),pick a color
'We just drew a line straight down the length of the control
'If you plan ahead, and place a line on the report permanently on top of the first row
'and below every row, you will only need to draw vertical lines.
'The lines below each row will be pushed down by the tallest control

我希望这会有所帮助。我根本不知道这些东西存在之前。以下是有关它的MSDN信息:http://msdn.microsoft.com/en-us/library/aa221362%28v=office.11%29.aspx

答案 2 :(得分:0)

好的......

1 - 进入报告的设计视图

2 - 在详细信息部分中选择所有要成为表格的文本框控件,如果任何一个增长,则ALL增长。

3 - 右键单击​​其中一个选定的文本框控件,然后选择布局 - >表格....但是......现在......在你的文本框行控件作为表格布局之后......你必须做更多的事情......

4 - 报告中的FORMAT选项卡属性...将所有PADDING属性设置为0.00 ... 0.00表示填充,0.00右填充,0.00左填充和0.00底部填充。 (默认通常约为0.0208)

5 - 请注意,将文本框更改为表格布局有点会将文本框向右抛出(至少对我而言),因此您可能需要重新调整它们,以便它们再次与页眉文本框对齐(如果您有任何你可能用来标题你的表名称列。

6 - 确保在详细信息区域删除所有空格,方法是将底栏(页面或报表页脚)贴紧地放在表格文本框布局的底部,并同样使用上部详细信息栏(页面或报表页眉) 。

7 - 现在,当您在打印预览中查看最大200%或更多缩放的报告时,您仍会在布局中的单元格之间看到非常小的空格,但当您实际打印时它们将是除非你拿出放大镜,否则几乎不会引起注意。

答案 3 :(得分:-1)

我为我的情况找到了一个解决方案,但我希望有一个更好的... 在我的例子中,左侧的TextBox描述了右侧1到3张图片的内容。 TextBox,如果放大超过第一张图片的高度,尽管在图片控件中设计了正确的Top-Attribute,但会将图片2和3向下移动。

我的解决方案:我将文本框的height属性设置为15厘米(例如2英寸)并将其设置为可收缩。 然而,奇怪的是,这有助于将图片定位在所需的顶部位置... :-)以及最小化所使用的水平空间。