Avatar billede selar Nybegynder
08. august 2003 - 00:41 Der er 3 kommentarer og
1 løsning

Mulighed for at vælge fil i makro

Hej.
Jeg har fra kabbak fået dette til at vælge en fil i en makro

Sub FilÅbenDialogboks()
    Flt = "Excel mappe(*.xls),*.xls,"
    Flt = Flt & "Print-filer (*.prn),*.prn,"
    Flt = Flt & "Tekst-filer(*.txt),*.txt"
    Titel = "Min private åben-fil boks"
    fileToOpen = Application _
    .GetOpenFilename(Flt, , Titel)
  If fileToOpen <> False Then
Workbooks.Open Filename:=fileToOpen
    End If
     
End Sub

Nu skal jeg bruge det i forbindelse med en makro til import af data, som ser sådan ud :

Sub HentData()


    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;C:\DanskeNetBank\Afstemning\filer\aftale17131F\Eksport.dat", Destination _
        :=Range("A2"))
        .Name = "Eksport_9"
        .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 = True
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
End Sub

Hvordan får jeg erstattet det 'faste filnavn' med det der er valgt fra 'filboksen' ?
Avatar billede kabbak Professor
08. august 2003 - 08:37 #1
Mon ikke dette virker

Sub HentData()
Flt = "Excel mappe(*.xls),*.xls,"
    Flt = Flt & "Print-filer (*.prn),*.prn,"
    Flt = Flt & "Tekst-filer(*.txt),*.txt"
    Titel = "Min private åben-fil boks"
    fileToOpen = Application _
    .GetOpenFilename(Flt, , Titel)
  If fileToOpen <> False Then

    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;”& fileToOpen, Destination _
        :=Range("A2"))
        .Name = "Eksport_9"
        .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 = True
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
    End If
End Sub
Avatar billede kabbak Professor
08. august 2003 - 12:46 #2
Sub HentData()
Flt = "Dat filer),*.dat,"
    Flt = Flt & "Print-filer (*.prn),*.prn,"
    Flt = Flt & "Tekst-filer(*.txt),*.txt"
    Titel = "Min private åben-fil boks"
    fileToOpen = Application _
    .GetOpenFilename(Flt, , Titel)
  If fileToOpen <> False Then

    With ActiveSheet.QueryTables.Add(Connection:= _
        "TEXT;"& fileToOpen, Destination _
        :=Range("A2"))
        .Name = "Eksport_9"
        .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 = True
        .TextFileCommaDelimiter = False
        .TextFileSpaceDelimiter = False
        .TextFileColumnDataTypes = Array(2, 2, 2, 2, 2, 2)
        .TextFileTrailingMinusNumbers = True
        .Refresh BackgroundQuery:=False
    End With
    End If
End Sub

en lille ændring øverst til .dat filer
Avatar billede kabbak Professor
08. august 2003 - 12:47 #3
Hov dr mangler noget

Flt = "Dat filer(*.dat),*.dat,"
Avatar billede selar Nybegynder
08. august 2003 - 14:13 #4
Det virker bare. Tak for hjælpen.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester