下拉列表-默认值



我有一个所有可用打印机的下拉列表:

Private Sub Form_Load()
    For Each l_pr In Application.Printers
      Me.dropdown.RowSourceType = "Value List"
      Me.dropdown.AddItem l_pr.DeviceName
   Next
   Me.dropdown.DefaultValue = Application.Printer.DeviceName
End Sub

我希望在加载表单时选择默认打印机。我认为您可以使用DefaultValue(请参阅我的代码)来实现这一点,但没有任何内容以这种方式显示。

我怎样才能做到这一点?

通过指定下拉菜单的Value属性而不是DefaultValue来选择打印机。

我在Access 2007中使用新表单验证了此代码。。。

Private Sub Form_Load()
    Dim l_pr As Printer
    Me.dropdown.RowSourceType = "Value List"
    For Each l_pr In Application.Printers
        Me.dropdown.AddItem l_pr.DeviceName
    Next
    'Me.dropdown.DefaultValue = Application.Printer.DeviceName
    Me.dropdown.Value = Application.Printer.DeviceName
    Set l_pr = Nothing
End Sub

我把RowSourceType语句移到了For循环之前。。。您只需要运行该语句一次。

还要注意Dim l_pr As Printer。。。声明变量是VBA中的推荐做法。在表单模块的Declarations部分中包含Option Explicit,然后从VB编辑器的主菜单中运行Debug->Compile。在排除其他代码问题之前,修复编译器抱怨的任何其他问题。

最新更新