Come utilizzare il metodo GetOpenFilename in Excel 2016 VBA

Come utilizzare il metodo GetOpenFilename in Excel 2016 VBA

Se la procedura di VBA ha bisogno di chiedere all'utente per un nome di file, si può utilizzare la funzione InputBox e lasciare che l'utente di Excel fare un po 'di battitura. Una casella di input di solito non è lo strumento migliore per questo lavoro, tuttavia, perché la maggior parte degli utenti trova difficile ricordare percorsi, barre rovesciate, nomi di file ed estensioni di file. In altre parole, è fin troppo facile sbagliare quando si digita un nome di file.

Per una migliore soluzione a questo problema, usa il metodo GetOpenFilename dell'oggetto Application, che assicura che il tuo codice metta le mani su un nome file valido, incluso il suo percorso completo. Il metodo GetOpenFilename visualizza la familiare finestra di dialogo Apri (una suoneria morta per la finestra di dialogo che Excel mostra quando si sceglie File → Apri → Sfoglia).

Il metodo GetOpenFilename non apre effettivamente il file specificato. Questo metodo restituisce semplicemente il nome del file selezionato dall'utente come stringa. Quindi puoi scrivere il codice per fare quello che vuoi con il nome del file.

La sintassi per il metodo GetOpenFilename

La sintassi ufficiale del metodo GetOpenFilename è la seguente:

object.GetOpenFilename ([fileFilter], [filterIndex],
  [titolo],[testo del pulsante], [selezione multipla])

Il metodo GetOpenFilename accetta gli argomenti facoltativi di seguito.

Discussione Cosa fa
FileFilter Determina i tipi di file visualizzati nella finestra di dialogo
(ad esempio, *.TXT). È possibile specificare diversi filtri tra cui l'utente
può scegliere.
Indice filtro Determina quale dei filtri di file viene visualizzato per
impostazione predefinita nella finestra di dialogo .
Titolo Specifica la didascalia per la
barra del titolo della finestra di dialogo .
ButtonText Ignorato (utilizzato solo per la versione Macintosh di Excel).
Selezione multipla Se True, l'utente può selezionare più file.

Un esempio GetOpenFilename

L'argomento fileFilter determina cosa viene visualizzato nell'elenco a discesa Tipo file della finestra di dialogo. Questo argomento è costituito da coppie di stringhe di filtro file seguite dalla specifica del filtro file con caratteri jolly, con virgole che separano ogni parte e coppia. Se omesso, questo argomento ha il seguente valore predefinito:

Tutti i files (*.*), *.*

Nota che questa stringa è composta da due parti, separate da una virgola:

Tutti i files (*.*)

e

*.*

La prima parte di questa stringa è il testo visualizzato nell'elenco a discesa File di tipo. La seconda parte determina quali file vengono visualizzati nella finestra di dialogo. Ad esempio, *.* indica tutti i file.

Il codice nell'esempio seguente apre una finestra di dialogo che chiede all'utente un nome file. La procedura definisce cinque filtri di file. Si noti che la sequenza di continuazione della riga VBA viene utilizzata per impostare la variabile Filtro; farlo aiuta a semplificare questo argomento piuttosto complicato.

Sub GetImportFileName ()
  Dim Finfo As String
  Dim FilterIndex As Long
  Dim Title As String
  Dim FileName come variante
'Imposta l'elenco dei filtri di file
  FInfo = "File di testo (*.txt),*.txt" & _
      “File Lotus (*.prn),*.prn,” & _
      “File separati da virgola (*.csv),*.csv,” & _
      “File ASCII (*.asc),*.asc,” & _
      "Tutti i files (*.*),*.*"
' Visualizza *.* per impostazione predefinita
  Indice filtro = 5
' Imposta la didascalia della finestra di dialogo
  Titolo = "Seleziona un file da importare"
' Ottieni il nome del file
  FileName = Application.GetOpenFilename (FInfo, _
    Indice filtro, titolo)
'Gestisci le informazioni di ritorno dalla finestra di dialogo
  Se FileName = False Then
    MsgBox "Nessun file è stato selezionato."
  Altro
    MsgBox “Hai selezionato” & FileName
  Finisci se
Fine sottotitolo

Ecco la finestra di dialogo visualizzata da Excel quando si esegue questa procedura. L'aspetto può variare a seconda della versione di Windows in uso e delle opzioni di visualizzazione impostate.

Come utilizzare il metodo GetOpenFilename in Excel 2016 VBA

Il metodo GetOpen Filename visualizza una finestra di dialogo personalizzabile e restituisce il percorso e il nome del file selezionato. Non apre il file.

In un'applicazione reale, faresti qualcosa di più significativo con il nome del file. Ad esempio, potresti volerlo aprire utilizzando un'istruzione come questa:

Cartelle di lavoro.Apri nomefile

Si noti che la variabile FileName è dichiarata come tipo di dati Variant. Se l'utente fa clic su Annulla, quella variabile contiene un valore booleano (False). Altrimenti, FileName è una stringa. Pertanto, l'utilizzo di un tipo di dati Variant gestisce entrambe le possibilità.


Smartsheet 9.1.1

Smartsheet 9.1.1

Smartsheet è una piattaforma di lavoro dinamica che ti consente di gestire progetti, creare flussi di lavoro e collaborare con il tuo team.

SharePoint

SharePoint

SharePoint è un sistema di collaborazione basato sul Web che utilizza una varietà di applicazioni per flussi di lavoro, database di "elenco" e altri componenti Web, nonché funzionalità di sicurezza per fornire controllo ai gruppi aziendali che lavorano insieme.

Calendario perpetuo 1.0.38/1.0.36

Calendario perpetuo 1.0.38/1.0.36

Van Nien Calendar è un'applicazione per la visualizzazione del calendario sul tuo telefono, che ti aiuta a vedere rapidamente la data lunisolare sul tuo telefono, organizzando così il tuo lavoro importante.

Microsoft Outlook 2021

Microsoft Outlook 2021

Microsoft Outlook è un'applicazione aziendale e di produttività sviluppata da Microsoft Corporation.

Fare clic su

Fare clic su

ClickUp è una delle piattaforme di produttività più apprezzate per qualsiasi azienda. Grandi aziende come Google, Booking.com, San Diego Padres e Uber utilizzano ClickUp per aumentare la produttività sul posto di lavoro.

Visualizzatore PDF-XChange 2.5.322.10

Visualizzatore PDF-XChange 2.5.322.10

Il PDF è diventato un formato comunemente utilizzato per leggere, creare e inviare documenti di testo. A sua volta, c'è stato un aumento del numero di programmi utilizzati per questo tipo di documentazione. PDF-XChange Viewer fa parte di un numero crescente di visualizzatori PDF.

Apache OpenOffice

Apache OpenOffice

Apache OpenOffice offre una suite completa di applicazioni Office che rivaleggiano con Microsoft 365, in particolare in Excel, PowerPoint e Word. Ti consente di gestire i tuoi progetti in modo più efficace e supporta diversi formati di file.

Scarica iTaxviewer 1.8.7

Scarica iTaxviewer 1.8.7

Il software iTaxViewer è il software di lettura di file XML più popolare oggi. Questo software è un'applicazione per la lettura delle dichiarazioni fiscali elettroniche in formato XML del Dipartimento Generale delle Imposte.

Lettore PDF Nitro

Lettore PDF Nitro

Nitro PDF Reader è un pratico editor PDF che copre tutte le attività di base che la maggior parte delle persone esegue ogni giorno con i documenti PDF.

Foxit Reader 12

Foxit Reader 12

Foxit Reader è principalmente un lettore PDF e consente anche di creare file PDF, firmarli, modificarli e aggiungere annotazioni. Funziona su sistemi operativi, ci sono plugin per vari programmi del pacchetto Microsoft Office.