【发布时间】:2016-10-11 16:59:22
【问题描述】:
我正在制作一个表格,显示我们数据库中的所有部件(来自名为 TAGS 的主组件表)。所有值都显示正常,因为它是从 TAG 表中提取的。问题是,在创建表时,他们从未输入每种组件类型的描述。
例如,在表格中,为清楚起见,TagLabel“CON”应该在报告中包含描述“Condensers”(一些标签标签不是很直观)。
我正在尝试使用 VBA 代码来格式化 TagLabel 框旁边的文本框 (TagDescription),该框根据 TagLabel 的内容显示描述。 “简单”但非常乏味的解决方案只是通过 TAG 表并手动添加描述列。
我正在尝试做这样的事情来避免这种情况:
Private Sub Report_Page()
If Me.TagLabel = "CON" Then
Set Me.TagDescription = "Condensers"
End If
End Sub
我确定这只是一个简单的语法修复,但我尝试了一些不起作用的方法,例如在 Me.TagLabel 的末尾添加 .value 和 .text 等。谢谢大家请提前帮助!
【问题讨论】:
-
你不应该
Set值。 值 分配是使用Let关键字进行的,或者根本没有关键字(因为Let无论如何都已弃用/无用)。保留Set以供参考 分配。字符串是 VBA 中的值。 -
@Mat's Mug 我取出了
Set并重新添加了.value,但它仍然无法正常工作。还有其他建议或一些示例代码吗? -
.Value和.Text是默认属性,恕我直言,最好将它们保留并明确引用它们。默认属性是错误的邪恶来源(不是在此实例中,而是依赖它们会有一天或另一天咬你)。如果你打破If条件并检查Me.TagLabel的值,它是否说"CON"完全正确,没有任何前导或尾随空格? -
@Mat's Mug,是的,它确实说的是“CON”……还有另外 20 个左右的组件我必须分类,但我认为它们中没有包含任何空格跨度>