none
access2016でvbaを使用してダイアログを開いてcsvを参照する方法がわかりません。 RRS feed

  • 質問

  • お世話になります、VBA初心者です。

    ファイル選択というボタンのクリック時にmsoFileDialogFilePickerを使用したいのですが、

    いろんなサイトを参考にしようとしてもAccessのバージョンが違うみたいでユーザー定義型は定義されていませんなど、上手くいきません。

    microsoft access 16.0 object library
    vbaバージョン7.1

    を使用しています。

    お手数ですが、どなたかヒントをご教授いただけませんか?



    2018年5月15日 6:06

回答

  • 参照設定でMicrosoft Office 16.0 Object Libraryを追加してください

    Private Sub コマンド1_Click()
        Dim result As Long
        Dim dialog As FileDialog
        Dim filters As FileDialogFilters
        
        Set dialog = Application.FileDialog(msoFileDialogFilePicker)
        dialog.AllowMultiSelect = False
        dialog.filters.Clear
        dialog.filters.Add "CSV", "*.csv"
        result = dialog.Show
        
        If (result <> 0) Then
            For i = 1 To dialog.SelectedItems.Count
                Dim filePath As String
                filePath = dialog.SelectedItems(i)
                MsgBox filePath
            Next
        End If
    End Sub


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    • 回答としてマーク risuka 2018年5月16日 1:46
    2018年5月15日 9:33

すべての返信

  • 参照設定でMicrosoft Office 16.0 Object Libraryを追加してください

    Private Sub コマンド1_Click()
        Dim result As Long
        Dim dialog As FileDialog
        Dim filters As FileDialogFilters
        
        Set dialog = Application.FileDialog(msoFileDialogFilePicker)
        dialog.AllowMultiSelect = False
        dialog.filters.Clear
        dialog.filters.Add "CSV", "*.csv"
        result = dialog.Show
        
        If (result <> 0) Then
            For i = 1 To dialog.SelectedItems.Count
                Dim filePath As String
                filePath = dialog.SelectedItems(i)
                MsgBox filePath
            Next
        End If
    End Sub


    個別に明示されていない限りgekkaがフォーラムに投稿したコードにはフォーラム使用条件に基づき「MICROSOFT LIMITED PUBLIC LICENSE」が適用されます。(かなり自由に使ってOK!)

    • 回答としてマーク risuka 2018年5月16日 1:46
    2018年5月15日 9:33
  • 解決できました、ありがとうございます!
    2018年5月16日 1:48