Как создать пользовательские ссылки в Application.FileDialog, используя VBA? - PullRequest
2 голосов
/ 13 ноября 2010

Я пытаюсь использовать конструкцию FileDialog в VBA для отображения списка доступных файлов, которые пользователь может захотеть открыть.Я хотел бы также направить пользователя к некоторым общим папкам, в которых они обычно находят тип контента, который они ищут.До сих пор у меня не было возможности найти метод для размещения ссылки в левой части поля FileDialog, в котором они могли бы щелкнуть, чтобы перейти в определенное место.

Я надеюсь, что есть способ сделать это при вызове методов FileDialog, как в примере, показанном ниже, где я использовал fd.AddLinkMethod "<path goes here>".

Private Function GetLocation() As String
     Dim fd As FileDialog
     Dim vrtSelectedItem As Variant
     Set fd = Application.FileDialog(msoFileDialogOpen)

     fd.ButtonName = "Open"
     fd.Title = "Select File To Open"
     fd.InitialView = msoFileDialogViewTiles

     fd.AddLinkMethod "<path goes here>"

     With fd
         If .Show = -1 Then

             For Each vrtSelectedItem In .SelectedItems
                 GetLocation= FormatPath(vrtSelectedItem)
             Next vrtSelectedItem

           End If
      End With     

      Set fd = Nothing
 End Function

Вот скриншот того, чтоЯ пытаюсь выполнить?

alt text

Есть ли какие-нибудь указатели?

Спасибо,

1 Ответ

2 голосов
/ 13 ноября 2010

Это должно быть выполнимо, но вам нужно будет переключиться с диалогового окна доступа к файлам и использовать общий диалог Windows из Windows API.(http://support.microsoft.com/kb/161286) Тогда есть несколько способов изменить ссылки, указанные в этой статье (http://www.makeuseof.com/tag/4-more-ways-to-customize-common-dialog-open-in-windows-xp/).Не самый элегантный, но он должен работать.Гудлак!

...