Condividi tramite

Nome file in Application.FileDialog

Anonimo
2012-01-11T19:56:49+00:00

Salve,

tra le proprietà di Application.FileDialog ne esiste una per avere il solo nome del file selezionato senza il percorso completo o bisogna estrarlo?

Grazie.

Microsoft 365 e Office | Access | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2012-01-12T09:19:51+00:00

Ciao Francesco,

devi estrarlo. Di seguito ho tratto l'esempio dall'help in linea di Access adattandolo per immettere nella listbox solo il nome del file. Per provarlo hai bisogni di una maschera con sopra una listbox che chiamerai FileList e di un pulsante di comando che chiamerai cmdFileDialog


Private Sub cmdFileDialog_Click()

   ' Requires reference to Microsoft Office 11.0 Object Library.

   Dim fDialog As Office.FileDialog

   Dim varFile As Variant

   ' Clear listbox contents.

   Me.FileList.RowSource = ""

   ' Set up the File Dialog.

   Set fDialog = Application.FileDialog(msoFileDialogFilePicker)

   With fDialog

      ' Allow user to make multiple selections in dialog box

      .AllowMultiSelect = True

      ' Set the title of the dialog box.

      .Title = "Please select one or more files"

      ' Clear out the current filters, and add our own.

      .Filters.Clear

      .Filters.Add "Access Databases", "*.MDB"

      .Filters.Add "Access Projects", "*.ADP"

      .Filters.Add "All Files", "*.*"

      ' Show the dialog box. If the .Show method returns True, the

      ' user picked at least one file. If the .Show method returns

      ' False, the user clicked Cancel.

      If .Show = True Then

         'Loop through each file selected and add it to our list box.

         Me.FileList.RowSource = ""

         For Each varFile In .SelectedItems

            Me.FileList.AddItem Mid(varFile, InStrRev(varFile, "") + 1, Len(varFile) - InStrRev(varFile, ""))

         Next

      Else

         MsgBox "You clicked Cancel in the file dialog box."

      End If

   End With

End Sub


David

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

4 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2012-01-12T13:57:22+00:00

    È quello che avevo già fatto dal principio. La mia risposta era per Gamberini che non aveva capito la mia domanda.

    Ti ringrazio ugualmente per la collaborazione.

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2012-01-12T13:21:46+00:00

    Non che io sappia.

    Come detto puoi ricavarlo a partire dalla variabile in questo modo:


    Mid(varFile, InStrRev(varFile, "") + 1, Len(varFile) - InStrRev(varFile, ""))


    dove varFile è il nome della variabile valorizzata dal ciclo che effettui sulla collection SelectedItems dell'oggetto FileDialog

    Ulteriori riferimenti qui

    http://support.microsoft.com/Default.aspx?scid=kb%3Ben-us%3B824272&x=11&y=10

    David

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2012-01-12T12:58:15+00:00

    Nella variabile risultato ho: c:\pippo\paperino\qui\quo\qua\pluto.txt

    Volevo sapere se esiste una delle proprietà che contenga solo: pluto.txt

    Grazie.

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Anonimo
    2012-01-12T09:02:31+00:00

    Salve,

    tra le proprietà di Application.FileDialog ne esiste una per avere il solo nome del file selezionato senza il percorso completo o bisogna estrarlo?

    Grazie.

    Non è chiaro, almeno per me, quello che vuoi fare.

    Puoi postare un pezzo di codice per favore?

    Grazie.

    La risposta è stata utile?

    0 commenti Nessun commento