Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Problem med infogande av textfil till excel

Postades av 2005-01-11 15:59:49 - Jesper Liedberg, i forum microsoft office, Tråden har 10 Kommentarer och lästs av 2320 personer

Hejsan

Jag försöker infoga en semikolonseparerad fil till excel. Jag har gjort ett makro där jag importerar en fil. Nu vill jag kunna göra så att man med en dialogruta kan välja vilken fil som ska importeras.
Detta är vad jag har:

<Code>
Private Sub openB_Click()

Dim pattern As String
Dim fPath As String

pattern = "Text (*.txt)|*.txt"
CommonDialog1.Filter = pattern
CommonDialog1.ShowOpen
fPath = (CommonDialog1.Filename)

With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;(fPath)", Destination:=Range("A1"))
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 1
.TextFilePromptOnRefresh = False
.TextFilePlatform = 1252
.TextFileStartRow = 3
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(1, 2, 1, 1, 2, 1, 1, 1)
.TextFileTrailingMinusNumbers = True
.Refresh
End With
End Sub
</Code>

De felmeddelande som dyker upp är:

"Körfel '1004' Program-eller objektdefinierat fel"
"Det går inte att hitta textfilen för att uppdatera detta externa område."
"Kontrollera att filen inte flyttats eler bytt namn och försök att uppdatera på nytt"

Kan någon var vänlig och berätta vad jag gör fel.

Tacksam för svar.


Svara

Sv: Problem med infogande av textfil till excel

Postades av 2005-01-11 22:16:46 - Niklas Jansson

Det man ser direkt är att du har lagt in "fPath" i strängen. Det rätta skulle isf vara:

<code>
...
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;(" & fPath& ")", Destination:=Range("A1"))
...
</code>

Sen verkar det vara ganska mycket kod, en del kanske är överflödig?
Blir mycket lättare att felsöka med mindre kod.


Svara

Sv:Problem med infogande av textfil till excel

Postades av 2005-01-12 08:16:03 - Jesper Liedberg

Hej och tack för svaret.

Jag får dock i princip samma fel som tidigare.

"Körfel nr '1004'

Det gick inte att komma åt filenförsök med något av följande:

Kontrollera att mappen finns
Kontrollera att mappen som innehåller filen inte är skrivskyddad
Kontrollera att filnamn och sökväg inte innehåller mer än 128 tecken"

Mappen finns och är inte skrivskyddad och sökvägen är inte mer än 128 tecken.

Tillägg: Har nu provat med bara makrot och en knapp på excelarket och det fungerar. Då ser det ut som nedan. Problemet uppstår alltså när man ska använda en Common dialog box för att markera vilken fil som ska importeras.
<Code>
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;E:\Excel\Beståndsfil\bestånd.txt", Destination:=Range("A1"))
</Code>


Svara

Sv: Problem med infogande av textfil till excel

Postades av 2005-01-12 08:41:23 - Niklas Jansson

Kommentera ut din Connection, etc. och skriv så här:
Range("A1")=fPath

För att se vad det är för fel på strängen.


Svara

Sv:Problem med infogande av textfil till excel

Postades av 2005-01-12 08:59:22 - Jesper Liedberg

Om jag kommenterar ut Connectionraden och ersätter den med Range("A1")=fPath
får jag "Körfel nr 450 Fel antal argument eller felaktig egenskapstilldelning"


Svara

Sv: Problem med infogande av textfil till excel

Postades av 2005-01-12 09:46:33 - Niklas Jansson

Alltså... Det jag menar är att du vill se vad som står i fPath.

Det här måste väl ändå funka?
<code>
Private Sub openB_Click()

Dim fPath As String
CommonDialog1.Filter = "Text (*.txt)|*.txt"
CommonDialog1.ShowOpen
fPath = (CommonDialog1.Filename)

ActiveWorkbook.ActiveSheet.Range("A1") = fPath
End Sub
</code>


Svara

Sv:Problem med infogande av textfil till excel

Postades av 2005-01-12 09:54:47 - Jesper Liedberg

Ok, det står E:\Excel\Beståndsfil\bestånd.txt.

Kan det bero på att CommonDialog1.Filename står med litet n i Filename istället för stort?
Det är enda skillnaden som jag kan upptäcka när man jämför med andra kodexempel. Långsökt eller?


Svara

Sv: Problem med infogande av textfil till excel

Postades av 2005-01-12 10:06:59 - Niklas Jansson

Nej, det är inte felet.

Testa nu att skriva så här:
<code>
Private Sub openB_Click()

Dim fPath As String
CommonDialog1.Filter = "Text (*.txt)|*.txt"
CommonDialog1.ShowOpen
fPath = (CommonDialog1.Filename)
fPath = "TEXT;(" & fPath& ")"

ActiveWorkbook.ActiveSheet.Range("A1") = fPath
End Sub
</code>

Jämför sedan det med den strängen som fungerar. Skiljer det sig?


Svara

Sv:Problem med infogande av textfil till excel

Postades av 2005-01-12 10:35:10 - Jesper Liedberg

Den första: E:\Excel\Beståndsfil\bestånd.txt.

Den andra: TEXT;(E:\Excel\Beståndsfil\bestånd.txt)

Jag förstår inte riktigt vad vi ska titta efter.


Svara

Sv: Problem med infogande av textfil till excel

Postades av 2005-01-12 10:46:58 - Niklas Jansson

Det vi vill är att vi ska få strängen i den connection du har att bli exakt samma som den du skriver in manuellt, då ska det fungera.

Nu ser du till exempel att det är parenteser som inte ska vara där. Skriv alltså
<code>
...
With ActiveSheet.QueryTables.Add(Connection:= _
"TEXT;" & fPath, Destination:=Range("A1"))
...
</code>


Svara

Sv:Problem med infogande av textfil till excel

Postades av 2005-01-12 10:50:38 - Jesper Liedberg

Att det är så klart när man får det förklarat för sig.

Nu fungerar det perfekt. Tackar för all hjälp.

Jesse


Svara

Nyligen

  • 08:28 Butiksskyltar: Hur upplever utbude
  • 22:31 Slappna av
  • 19:55 kick-off med fokus på hälsa?
  • 19:53 kick-off med fokus på hälsa?
  • 16:24 Föreslå en skönhetsklinik online
  • 16:23 Föreslå en skönhetsklinik online
  • 18:42 Hvor finder man håndlavede lamper
  • 18:41 Hvor finder man håndlavede lamper

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 570 768
27 960
271 761
539
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies