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


Importera textfiler till Access

Postades av 2006-03-30 12:15:29 - Michael Ziegler, i forum microsoft office, Tråden har 5 Kommentarer och lästs av 1250 personer

Jag vill importera ett störra antal TXT-filer till en Acessdatabas.

Har lyckats göra detta i Access genom att använda Import Specifications i ett macro.

Nu vill jag dock starta detta macro från Excel (VBA) och helst kunna specificera innehållet i Import Specifications, så:
Fråga 1: Hur startar jag ett macro i en Access-databas från Excel?
Fråga 2: Kan jag i Excel specificera hur TXT-filen skall importeras (utan att loopa igenom filen - tar för lång tid), och inte använda Access mer än som slutmål?

Hoppas någpn förstår mitt problem...

/MiZ


Svara

Sv: Importera textfiler till Acess

Postades av 2006-03-30 13:22:41 - Michael Ziegler

Lyckades lösa fråga 1 själv genom
Set accObject = CreateObject("Access.Application")
accObject.Visible = False
accObject.OpenCurrentDatabase (TEST.MDB")
accObject.DoCmd.RunMacro "Import"
accObject.CloseCurrentDatabase
Set accObject = Nothing

någon som vet mer om fråga 2?


Svara

Sv:Importera textfiler till Acess

Postades av 2006-03-30 16:29:35 - Dennis Wallentin

Hej Michael,

"Fråga 2: Kan jag i Excel specificera hur TXT-filen skall importeras (utan att loopa igenom filen - tar för lång tid), och inte använda Access mer än som slutmål?"

Din fråga är lite väl generell och för bred för att kunna besvara men har du övervägt att importera textfilens data mha ADO & SQL?

Mvh
Dennis


Svara

Sv: Importera textfiler till Acess

Postades av 2006-03-31 09:50:33 - Michael Ziegler

Det är importen via SQL som tar för lång tid, skulle vilja definiera mina Import Specifications i VBA och inte ha dem i databasen.

/MiZ


Svara

Sv:Importera textfiler till Acess

Postades av 2006-03-31 15:47:12 - Dennis Wallentin

Michael,

OK, nu förstår jag situationen bättre.

Nedan ser du ett exempel på hur det kan ställas upp. Textfiler kan lätt vara 'knöliga' i detta sammanhang men du borde redan ha en fungerande lösning där SQL-strängen är definierad:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
Option Explicit
 
'Sätt en referens till Microsoft ActiveX Data Object x.x via
'Verktyg | Referenser i VB-editorn.
 
Dim cnt As ADODB.Connection
 
Const stTitle As String = "Import av data"
 
Const stSQL = "INSERT INTO Tbl_Test " & _
                     "SELECT * FROM " & _
                     "[Text;DATABASE=c:\Dennis].[Test.txt];"
               
Const stCon = "Provider=Microsoft.Jet.OLEDB.4.0;" & _
                     "Data Source=C:\Dennis\db1.mdb;" & _
                     "Persist Security Info=False"
 
Sub SQL_Update()
 
On Error GoTo Error_Handling
 
Set cnt = New ADODB.Connection
 
With cnt
    .Open stCon
    .Execute (stSQL)
End With
 
ExitHere:
Set cnt = Nothing
Exit Sub
 
Error_Handling:
    If Err.Number = 53 Then
        MsgBox "Filen Test.Txt kan inte hittas, var vänlig ange korrekt sökväg.", _
               vbInformation, stTitle
        Resume ExitHere
    Else
        MsgBox "Följande fel har inträffat :" & vbCrLf & _
               "Fel : " & Err.Description & " " & Err.Number & " " & Err.Source, _
               vbCritical, stTitle
        Resume ExitHere
    End If
End Sub


Testa och hör av dig om utfallet.

Mvh
Dennis


Svara

Sv: Importera textfiler till Acess

Postades av 2006-04-03 14:27:43 - Michael Ziegler

Tack Dennis!
Några kommentarer/problem dock:
- Ändrade SQL-n till "SELECT * INTO Tbl_Test FROM..." då testtabellen ju inte finns.
- Jag vill kunna specifiera till vilka fält vilka tecken i filen skall läsas, hur
Början på filen ser ut så här:
ABC 123 4E
CCC 444 53
ABC 222 GG osv.
Jag vill alltså att radens första 8 tecken (ABC" skall importeras till ett textfält med längden 255 tecken.

(Nu läser den bara en första kolumnen, ABC,CCC,ABC , i ett fält som heter som första posten, ABC)

Hoppas Du förstår.
/MiZ


Svara

Nyligen

  • 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
  • 16:36 Allt du behöver veta om keramiskt
  • 16:14 Vem anlitar man egentligen när tak

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 721
27 958
271 751
5 797
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
Expand
next previous
Close

Previous

0/0

Next