我正试图连接我的 listbox
到一个文件夹,如果用户上传excel文件到该文件夹,列表框将自动更新。listbox
. 任何想法,我怎么能开始这个?
虽然这可以通过VBA来完成,但通常允许用户浏览一个文件夹(通常是过滤后只显示特定类型的文件)。如果你确实想这样做,你需要创建一个小的VBA函数,循环有关文件夹并创建一个文件名的字符串。
Public Function fListFiles(strFolder As String) As String
On Error GoTo E_Handle
Dim strFile As String
strFile = Dir(strFolder, vbNormal)
Do
If InStr(strFile, ".xl") > 0 Then
fListFiles = fListFiles & strFile & ";"
End If
strFile = Dir
Loop Until strFile = ""
If Right(fListFiles, 1) = ";" Then fListFiles = Left(fListFiles, Len(fListFiles) - 1)
fExit:
On Error Resume Next
Exit Function
E_Handle:
MsgBox Err.Description & vbCrLf & vbCrLf & "fListFiles", vbOKOnly + vbCritical, "Error: " & Err.Number
Resume fExit
End Function
然后,在你的表格中,设置列表框的 RowSource
变成 "值列表",在表单的 "值列表 "中输入以下代码 Timer
事件。
Private Sub Form_Timer()
Me!lstFile.RowSource = fListFiles("J:\downloads\")
End Sub
最后,把表格的定时器间隔从0改成60,000(1分钟)。
请注意。