2017-05-30 5 views
2

私はAccessデータベースにフォームを作成しています。ファイルダイアログウィンドウを何度か開く必要があります。オプション値を数回変更してファイルダイアログウィンドウを開いた後、フィルタを変更しなかった理由は分かりません。FileDialogは以前のフィルタを維持します

Public Sub Command17_Click() 
Dim fd As FileDialog 
Set fd = Application.FileDialog(msoFileDialogOpen) 
    With fd 
     .AllowMultiSelect = False 
     If Option18.Value = True Then 
     .Filters.Add "Access", "*.accdb", 1 
     Else 
     If Option20.Value = True Then 
     .Filters.Add "Excel", "*.xlsx", 1 
     End If 
     End If 
     .Show 

Text0.Value = fd.SelectedItems(1) 
    End With 
    Set fb = Nothing 
End Sub 

答えて

3

フィルタをクリアする必要があります。

With .Filters 
    .Clear 
    .Add "Access", "*.accdb", 1 
    '... 
End with 
関連する問題