13. juli 2004 - 14:22
Der er
9 kommentarer og 1 løsning
Popup med filnavn
Hej Jeg har en makro der åbner en fil hverdag og laver tekst-til-kolonner. Problemet er bare at tekst filen skifter navn hver dag. Hvordan får jeg nedenstående til at lave en pop-up som skal udfyldes med filnavn og makro herefter kan hente nævnte fil. Sheets.Add With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;C:\Banken\FilerFraBanken\Oversigter\Indbptx - 01 20040707.", _ Destination:=Range("A1")) .Name = "Indbptx - 01 20040707._1" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlOverwriteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = xlWindows .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 4, 1, 1, 1, 1) .TextFileDecimalSeparator = "." .Refresh BackgroundQuery:=False End With
Annonceindlæg fra Partnertekst
Hvis du opretter en string : Dim StrDagensFil as string strDagensFil = inputbox("Indtast dato (yyyymmdd)") strDagensFil = "C:\Banken\FilerFraBanken\Oversigter\Indbptx - 01" & strDagensFil Herefter indsaetter du blot denne i din kode: With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;strDagensFil, _ Destination:=Range("A1")) .Name = "Indbptx - 01 20040707._1" ....osv
Hvad er der galt med denne? Dim StrDagensFil As String StrDagensFil = InputBox("Indtast dato (yyyymmdd)") StrDagensFil = "C:\Banken\FilerFraBanken\Oversigter\Indbetalinger - 01" & StrDagensFil Sheets.Add With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;strDagensFil", _ Destination:=Range("A1")) .Name = "Indbetalinger - 01 20040705._1" .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlOverwriteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = xlWindows .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = False .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = False .TextFileColumnDataTypes = Array(1, 1, 1, 1, 4, 1, 1, 1, 1) .TextFileDecimalSeparator = "." .Refresh BackgroundQuery:=False
With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;strDagensFil", _ Destination:=Range("A1")) .Name = "Indbetalinger - 01 20040705._1" Er det "" der står forkert eller .....
I forhold til denne "TEXT;C:\Banken\FilerFraBanken\Oversigter\Indbptx - 01 20040707." mangler du et mellemrum efter 01, Sådan StrDagensFil = "C:\Banken\FilerFraBanken\Oversigter\Indbetalinger - 01 " & StrDagensFil
Jeg lavede en ny for at se om det virkede - men nej... Dim StrDagensFil As String StrDagensFil = InputBox("Indtast dato (yyyymmdd)") StrDagensFil = "C:\Banken\FilerFraBanken\Oversigter\Indbetalinger - 01 " & StrDagensFil ActiveWorkbook.Worksheets.Add With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;strDagensFil", _ Destination:=Range("A1")) .Name = "Indbetalinger - 01 20040705." .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlOverwriteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = xlWindows .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = True .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = True .TextFileColumnDataTypes = Array(1, 1, 1, 1, 4, 4, 1, 1, 1) .TextFileDecimalSeparator = "." .Refresh BackgroundQuery:=False End With Er der evt. problemer med: .Name = "Indbetalinger - 01 20040705."
Det kommer med fejlen : kan ikke finde tekstfilen
Dim StrDagensFil As String, StrDagensFil As String1 StrDagensFil1 = InputBox("Indtast dato (yyyymmdd)") StrDagensFil = "C:\Banken\FilerFraBanken\Oversigter\Indbetalinger - 01 " & StrDagensFil1 ActiveWorkbook.Worksheets.Add With ActiveSheet.QueryTables.Add(Connection:= _ "TEXT;" & StrDagensFil, _ Destination:=Range("A1")) .Name = "Indbetalinger - 01 ." & StrDagensFil1 .FieldNames = True .RowNumbers = False .FillAdjacentFormulas = False .PreserveFormatting = True .RefreshOnFileOpen = False .RefreshStyle = xlOverwriteCells .SavePassword = False .SaveData = True .AdjustColumnWidth = True .RefreshPeriod = 0 .TextFilePromptOnRefresh = False .TextFilePlatform = xlWindows .TextFileStartRow = 1 .TextFileParseType = xlDelimited .TextFileTextQualifier = xlTextQualifierDoubleQuote .TextFileConsecutiveDelimiter = True .TextFileTabDelimiter = True .TextFileSemicolonDelimiter = False .TextFileCommaDelimiter = True .TextFileSpaceDelimiter = True .TextFileColumnDataTypes = Array(1, 1, 1, 1, 4, 4, 1, 1, 1) .TextFileDecimalSeparator = "." .Refresh BackgroundQuery:=False End With prøv den
der var lige en fejl i dim linien Dim StrDagensFil As String, StrDagensFil1 As String
Tak Kabbak og Overchord Det virker bare super!!! Kabbab jeg har oprettet nyt spørgsmål til dig da jeg gav alle til overchord ved en fejl....
13. juli 2004 - 17:27
#10
finnholm - saa boer du naesten faa nogle af pointene igen siden kabbak lavede meget af arbejdet med at faa det til at virke!
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig