Access中的VB:组合框值在表单视图中不可见,但通过Debug.Print可见

时间:2009-04-06 19:17:37

标签: vba ms-access-2007

Form onLoad中的代码:

  country_combo.RowSourceType = "Value List"

重置功能中的代码:

  Dim lListIndex As Long

  With Me.country_combo
    For lListIndex = .ListCount - 1 To 0 Step -1
      .RemoveItem (lListIndex)
    Next lListIndex<br/>
  End With

填写国家/地区组合的代码:

  *For n = 1 To numCountries*
    *countryCombo.AddItem (countryRS.Fields("countryName"))*
    *countryRS.MoveNext*
  *Next n*

我遇到填充国家组合框的代码运行后出现的问题。这些值是我可以运行Debug.Print(countryCombo.Value)并打印出所选国家/地区的名称,但我根本看不到组合框中的值。它们是看不见的,据我所知,特定物品没有可见性,除非我完全弄错了。

comboBoxError.png http://img110.imageshack.us/my.php?image=comboboxerror.png

3 个答案:

答案 0 :(得分:0)

我认为您应该使用Access的GUI工具来完成您正在寻找的工作。在设计模式下,单击要填充的字段,然后单击“查找”选项卡。然后,您可以指定一个表格来填充该字段,您的表单也应该自动更新。

答案 1 :(得分:0)

我也看到了你在这里所描述的内容 - 据我所知,这是Access(我使用的是2007)中的一个错误,只有当你以编程方式弄乱组合框的内容时才会发生。它不会每次都发生。如果您突出显示组合框中的文本,则问题会自行解决。

答案 2 :(得分:0)

我遇到了与Access 2003类似的问题。基于一个组合框的选择,列表框的行源设置为SQL字符串基本上是SELECT DISTINCT [MyField_Selected] FROM MyTable。对于某些字段,值在列表框中可见,而其他字段则不可见。然而,值是因为我可以通过代码访问它们。为了使它更有趣,它在Access 2007中运行良好。 刚在另一个论坛上找到了解决方案。检查表中相关字段的格式属性。就我而言,当Access 2007创建表时,它会在其中放置一个@格式。我删除了它,一切都很棒!