我有一个看似常见的问题,但具体细节与其他可用问题有所不同。在Windows 10上的MS Access 2016数据库中工作。
我有一个执行UDP函数Coalesce的查询,该函数将来自多个记录的长文本组合为单个字符串。该查询的大小似乎完全没有限制-我可以查看数百个字符的正确输出。
但是,当我尝试在报表中显示此内容时,在带有“可以增长”的文本框中,只有前255个字符可见。 (文本框正确增长)
此文本框完全没有设置任何格式,而是将其设置为“纯文本”(因此可以缩小,这显然是Rich Text无法做到的。同样,Rich text也有同样的问题)
许多解决方案都围绕使查询返回超过255个字符(Why a Long Text field is returning only 255 characters in a MS ACCESS 2013 query?)的问题-我没有这个问题。查询可以。
许多解决方案都围绕短文本类型的表中的记录源,或短文本字段(Access report field truncating at 255 characters)中的查询。这也不是我的问题,因为a)原始源字段是长文本,通过输出字符串类型的UDP处理,并且查询结果是> 255个字符。
帮助!
答案 0 :(得分:1)
如果报告RecordSource是一个查询,该查询带有串联,则可能会遇到Allen Browne的ConcatRelated函数文章http://allenbrowne.com/func-concat.html中描述的错误,在该文章中他提供了可能的解决方案。
但是,可以从文本框或另一个VBA过程中调用该函数。尝试使结果不传递到查询的选项:
引用查询对象,其名称直接串联为RecordSource
直接在RecordSource中使用串联函数构造SQL语句
直接在文本框中调用串联功能