Предварительно установите поле «Сохранить как тип» при использовании Application.FileDialog (msoFileDialogSaveAs) с MSAccess

Я искал способ сделать это повсюду.

Я хочу открыть диалоговое окно «Сохранить как», чтобы пользователь мог выберите место для сохранения файла. Но, я хочу, чтобы в поле «Сохранить как тип» было задано значение «Файл с разделителями-запятыми (* .csv)»

Проблема в том, что метод «Фильтр» не работает похоже, работает с «msoFileDialogSaveAs». Можно ли предварительно установить тип файла с помощью «Application.FileDialog (msoFileDialogSaveAs)»?

На данный момент, если я сохраню файл с расширением .csv, а затем открою его в Excel, Я получаю сообщение « Файл, который вы пытаетесь открыть xxx.csv, имеет формат, отличный от указанного в расширении файла ... ». Однако файл работает правильно.

 With Application.FileDialog(msoFileDialogSaveAs)
        .Title = "xxx"
        .AllowMultiSelect = False
        .InitialFileName = "xxx.csv"
        '.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.*"
        result = .Show
        If (result <> 0) Then
            ' create file
            FileName = Trim(.SelectedItems.Item(1))
            fnum = FreeFile
            Open FileName For Output As fnum


            ' Write the csv data from form record set
            For Each fld In rs.Fields
               str = str & fld.Name & ", "
            Next

           ' Write header line
           str = Left(str, Len(str) - 2)   ' remove last semi colon and space
           Print #fnum, str
           str = ""

          ' Write each row of data
           rs.MoveFirst
          Do While Not rs.EOF             
            For i = 0 To 40
                str = str & rs(i) & ", "    ' write each field seperated by a semi colon
            Next i
            str = Left(str, Len(str) - 2)   ' remove last semi colon and space
            Print #fnum, str
            str = ""
            rs.MoveNext
           Loop

        ' close file
        Close #fnum
        End If
  End With

Than You!

11
задан pec 14 October 2011 в 16:14
поделиться