[vba]

Public Sub BuildList()
Dim i As Long
Dim iLastRow As Long
Dim oCB As CommandBarControl
Dim oCBCtl As CommandBarControl

With Worksheets("Filenames")

Set oCB = Application.CommandBars("Worksheet Menu Bar").Controls.Add(Type:=msoControlPopup, temporary:=True)
oCB.Caption = "Filenames"

iLastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
For i = 1 To iLastRow 'iLastRow to 1 Step -1
Set oCBCtl = oCB.Controls.Add(Type:=msoControlButton)
oCBCtl.Caption = .Cells(i, "A").Value
oCBCtl.Parameter = .Cells(i, "A").Value
oCBCtl.OnAction = "OpenFile"
Next i

End With

End Sub

Public Sub Openfile()
With Application.CommandBars.ActionControl
Workbooks.Open Filename:=.Parameter
End With
End Sub
[/vba]