Access (VBA)

Access VBAに関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(Windows 7 Professional : Access 2007)
Application.FileDialog(msoFileDialogOpen)で開く時、.InitialFileNameの指定は拡張子が表示されない?
投稿日時: 18/02/26 16:51:50
投稿者: wh

件名の通りなんですが、解決方法が判らないので、お知恵をお借りしたいのですが。
 
Private Sub IMPボタン_Click()
    Dim intRet As Integer
 
    With Application.FileDialog(msoFileDialogOpen)
        .Title = "ファイルの選択"
        .AllowMultiSelect = False
        .Filters.Clear
        .Filters.Add "データファイル", "*.csv;*.txt"
        .FilterIndex = 1
        .InitialFileName = CurrentProject.Path & "\IMPORTDATA.csv"
        .InitialView = msoFileDialogViewDetails
        intRet = .Show
        If intRet <> 0 Then
            DoCmd.TransferText acImportDelim, , "明細一覧表テーブル", .SelectedItems.Item(1), True
        Else
            MsgBox "処理を中止しました。", vbOKOnly
            Exit Sub
        End If
    End With
End Sub
としたときに、ダイアログのファイル名欄には"IMPORTDATA"としか表示してくれま
せん。望んでいるのは、"IMPORTDATA.csv"と表示して欲しいのですが、これ以外の
方法はあるのでしょうか?

回答
投稿日時: 18/02/26 21:23:08
投稿者: sk

引用:
With Application.FileDialog(msoFileDialogOpen)

引用:
.InitialFileName = CurrentProject.Path & "\IMPORTDATA.csv"

引用:
ダイアログのファイル名欄には"IMPORTDATA"としか表示してくれません。

恐らくそういう仕様なのだと思います。
( Wizhook オブジェクトの GetFileName メソッドでも同じでした)

投稿日時: 18/02/27 09:30:01
投稿者: wh

sk様、有難うございました。
 
すいません。自己解決しました。
 
フィルター追加時のファイル拡張子を指定する所で
 .Filters.Add "データファイル", "*.csv;*.txt"
 としていたところを、
 
 .Filters.Add "データファイル", "*.*"
と、全てのファイル形式を対象とすると、
  
ダイアログのファイル名欄に"IMPORTDATA.csv"と表示されました。
 
sk様の言うとおり、こういう仕様なのだと受け入れるざるを得ないのでしょう。