我有一个包含组合框的Access 2000表单。组合框绑定到表格中的字段。当表中的值为null时,我想在组合框上设置默认值而不使记录变脏。除非是新记录,否则设置defaultValue不起作用。当我尝试设置该值时,出现错误“您无法为此对象赋值”。
有什么想法吗?
Me.cboName.Value = Me!cboName.Value'这导致上述错误
Me.cboName.DefaultValue = Me!cboName.Value'这对现有记录没有任何作用。
答案 0 :(得分:0)
创建新记录时输入DefaultValue。要显示现有记录的值...我能想到的最简单的方法是使用未绑定的控件。例如,如果您使用的字段是Current事件中的Name,则您将使用如下代码:
Private Sub Form_Current()
me.cboName.value = Nz(me.theName.value,defaultValue)
End Sub
其中defaultValue是您先前确定的默认值。这将有效地要求您为名称设置两个控件...一个具有绑定值,另一个具有显示值。如果您这样做,则在更改theName
时,您还必须添加代码以更新cboName
。
正如Remou建议的那样,你应该问问自己这是否真的是你想做的事情,因为它肯定至少有点乱。