Condividi:        

macro excel Importa Dati Esterni

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

macro excel Importa Dati Esterni

Postdi libraio » 01/04/17 18:01

S.o. Office 2003

Ciao a tutti,
dovendo importare spesso dati txt o csv in un Foglio Excel 2003, utilizzo abitualmente la procedura 'Importa dati esterni'.
Ho cercato di automatizzare l'operazione creando la macro seguente, ma vorrei inserire un box di ricerca del file txt o csv da importare. Non ci riesco... è possibile?

Ecco il codice che ho creato:
Codice: Seleziona tutto
Sub Importa_dati()
    Range("A1").Select
    With ActiveSheet.QueryTables.Add(Connection:= _
    "TEXT;C:\...\VARIA.txt.", _
        Destination:=Range("A1"))
        .Name = "VARIA.txt."
        .FieldNames = True
        .RowNumbers = False
        .FillAdjacentFormulas = False
        .PreserveFormatting = True
        .RefreshOnFileOpen = False
        .RefreshStyle = xlInsertDeleteCells
        .SavePassword = False
        .SaveData = True
        .AdjustColumnWidth = True
        .RefreshPeriod = 0
        .TextFilePromptOnRefresh = False
        .TextFilePlatform = 1252
        .TextFileStartRow = 1
        .TextFileParseType = xlDelimited
        .TextFileTextQualifier = xlTextQualifierDoubleQuote
        .TextFileConsecutiveDelimiter = False
        .TextFileTabDelimiter = False
        .TextFileSemicolonDelimiter = False
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileOtherDelimiter = "|"
        .TextFileColumnDataTypes = Array(2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End Sub


Grazie per l'aiuto
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31

Sponsor
 

Re: macro excel Importa Dati Esterni

Postdi Anthony47 » 02/04/17 11:55

Modifica la prima parte della macro come segue:
Codice: Seleziona tutto
Sub Importa_dati()
'BLOCCO AGGIUNTO:
Application.DisplayAlerts = False
Range("A:Z").Clear
Application.DisplayAlerts = True
'Chiedi il file da gestire:
With Application.FileDialog(msoFileDialogFilePicker)
    .AllowMultiSelect = False
    .Filters.Clear
    .Filters.Add "Text", "*.txt; *.csv", 1   '<<< Filtro per estensione
    .Show
    If .SelectedItems.Count = 0 Then
         MsgBox ("Nessuna voce selezionata, procedura annullata")
         Exit Sub
    End If
    FullNome = "TEXT;" & .SelectedItems(1)     'Directory e Nome del file selezionato
End With
'BLOCCO MODIFICATO:
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:= _
FullNome, _
Destination:=Range("A1"))
'BLOCCO INVARIATO:
.Name = "VARIA.txt."
'etc etc
Avatar utente
Anthony47
Moderatore
 
Post: 19181
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: macro excel Importa Dati Esterni

Postdi libraio » 02/04/17 17:21

Insostituibile Anthony!
E' esattamente quanto cercavo.
Grazie!
libraio
Utente Senior
 
Post: 329
Iscritto il: 04/01/10 20:31


Torna a Applicazioni Office Windows


Topic correlati a "macro excel Importa Dati Esterni":


Chi c’è in linea

Visitano il forum: Nessuno e 43 ospiti