Anzeige
Archiv - Navigation
1260to1264
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

text Datei schneller importieren

text Datei schneller importieren
Sascha
einen schönen guten morgen,
folgendes "problem", ich importiere mit folgendem code daten aus einer txt datei nach excel.
Sub DateiImport1()
Dim iRow As Integer, iCol As Integer
Dim sFile As String, sTxt As String
sFile = Sheets("Baum52").Range("C19").Value
If Dir(sFile) = "" Then
Beep
MsgBox "Datei wurde nicht gefunden!"
Exit Sub
End If
iRow = Cells(Rows.Count, 1).End(xlUp).Row + 1
iCol = 1
Close
Open sFile For Input As #1
Do Until EOF(1)
Line Input #1, sTxt
Do While InStr(sTxt, ";")
Cells(iRow, iCol).Value = Left(sTxt, InStr(sTxt, ";") - 1)
sTxt = Right(sTxt, Len(sTxt) - InStr(sTxt, ";"))
iCol = iCol + 1
Loop
Cells(iRow, iCol).Value = sTxt
iRow = iRow + 1
iCol = 1
Loop
Close
End Sub
(die daten stehen in der txt datei semikolon getrennt, meist immer zwischen 5 bis 15 spalten und 10 bis 30 zeilen)
Das funktioniert soweit auch ganz gut, LEIDER dauert es teilweise ganz schön lange (2-3 min)....
gibt es eine möglichkeit die daten anders (schneller) einzulesen?
liebe grüße
sascha

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: text Datei schneller importieren
28.04.2012 11:12:27
Hajo_Zi
Hallo Sascha,
warum machst Du nicht einfach Datei öffnen *.TXT.

AW: text Datei schneller importieren
28.04.2012 11:56:45
Sascha
hallo hajo,
wie meinst du das mit datei öffnen?
- wichtig beim einlesen der daten ist, das jeder semikolon getrennte wert auch in eine zelle der tabelle geschrieben wird,
lieben gruß
sascha
AW: text Datei schneller importieren
28.04.2012 12:01:14
Hajo_Zi
Hallo Sascha,
bei Excel Gut solltestz Du den Öffnen Dialog kennen. Da kann man als Dateityp *.TXT eingeben und dann Datei auswählen und öffnen. Ich habe jetzt so eine Datei nicht. Vielleicht anschließend noch Text in Spalten.
Gruß Hajo
Anzeige
AW: text Datei schneller importieren
28.04.2012 12:13:11
Sascha
hallo hajo,
hmm..."gut" ist dann wohl subjektiv zu verstehen (wird dann zukünftig auf bescheiden abgeändert) :)
ne kenn ich so leider nicht...muss ich mich mal schlau machen, wie ich den funktionsablauf mit
dem "öffnen dialog" verbessern kann.
vielen dank für deine hilfe
liebe grüße
sascha
AW: text Datei schneller importieren
28.04.2012 12:38:21
Sascha
hallo hajo,
hab jetzt mal versucht das problem mittels makrorecorder anzugehen, der ablauf funktioniert dabei auch super schnell :)
folgender code hat mir excel ausgegeben
Sub import()
' import Makro
With ActiveSheet.QueryTables.Add(Connection:="TEXT;D:\TestOrdner1\Baum58.txt", Destination:= _
Range("$A$1"))
.Name = "Scan_88888_120517"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.TextFilePromptOnRefresh = False
.TextFilePlatform = 850
.TextFileStartRow = 1
.TextFileParseType = xlDelimited
.TextFileTextQualifier = xlTextQualifierDoubleQuote
.TextFileConsecutiveDelimiter = False
.TextFileTabDelimiter = False
.TextFileSemicolonDelimiter = True
.TextFileCommaDelimiter = False
.TextFileSpaceDelimiter = False
.TextFileColumnDataTypes = Array(2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 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
Range("N7").Select
End Sub
Frage: der Pfad zur datei steht in zelle R20, wie muss ich den code anpassen, damit er aus dieser zelle liest?
lieben gruß
sascha
Anzeige
AW: text Datei schneller importieren
28.04.2012 14:00:03
Hajo_Zi
Hallo Sascha,
With ActiveSheet.QueryTables.Add(Connection:="TEXT;" & Range("R20") & &"Baum58.txt", Destination:= _
Range("$A$1"))
Gruß Hajo
AW: text Datei schneller importieren
30.04.2012 15:29:48
Sascha
hallo hajo,
ja super, vielen dank dafür.
mit besten grüßen
sascha

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige