2013-08-29 128 views
1

我希望在更新组合框时访问“自动”播放歌曲。我希望歌曲根据组合框的内容而改变。不幸的是,下面的代码返回:MS Access中的Windows Media Player

Constant expression required 

这里是我的工作代码:

Private Sub cboCustomerID_AfterUpdate() 
txtSongFile = Me.cboCustomerID.Column(2) 
Me.Refresh 
Const conMEDIA_FILE_TO_OPEN As String = Me.txtSongFile 

Me![WindowsMediaPlayer1].openPlayer (conMEDIA_FILE_TO_OPEN) 

End Sub 

任何帮助将不胜感激!谢谢。

回答

1

您提到的错误是编译错误,而不是运行时错误。它是由这一行造成的:

Const conMEDIA_FILE_TO_OPEN As String = Me.txtSongFile 

的原因是,你可以在=标志的右侧用什么VBA规则是相当严格的。这是什么Access的在线帮助说:

“文字,其他常数,或任何组合,包括所有算术或逻辑运算符,除了是。

但是,你应该能够使用,而不是一个变量:

Dim strMEDIA_FILE_TO_OPEN As String 
strMEDIA_FILE_TO_OPEN = Me.txtSongFile 
+0

任何建议,对于不太复杂的方式来获得WMP打开(和播放)从下拉列表中的文件名? –

+0

我刚刚更新了建议变量而不是常量的答案。这是否与你的其他代码一起工作? – HansUp

+0

完美!谢谢,非常感谢! –