Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

komplette Textdatei in excel importieren

Frage Entwicklung VB for Applications

Mitglied: lena123

lena123 (Level 1) - Jetzt verbinden

02.11.2007, aktualisiert 03.11.2007, 18122 Aufrufe, 2 Kommentare

Hallo,

mein Problem ist folgendes: Ich habe eine Textdatei mit Zahlen und Text, diese sind schon mit Tabs getrennt. Wenn ich mit Strg+a den Inhalt markiere und dann in Excel kopiere, werden die Werte richtig in die Zellen eingefügt.

Mit Workbooks.OpenText funktioniert es auch, allerdings möchte ich die Textdatei nicht in einem neuen Workbook öffnen sondern in meinem aktuellen workbook in tabelle 2, und evtl. sogar in eine bestimmte Zeile.

Wenn ich das ganze mit "Open test.txt For Input As #1 ..." versuche, habe ich das Problem dass nur mein Text ausgelesen wird und die Zahlen nicht.

Ich möchte nicht jede Textdatei einzeln öffnen und den Inhalt per Hand kopieren, sondern das ganze automatisch starten.

Kann mir da jemand helfen?

Vielen Dank.
Gruß lena
Mitglied: bastla
02.11.2007 um 18:33 Uhr
Hallo lena123!

"Workbooks.OpenText" wäre ja nicht so übel - öffnen, alles markieren und kopieren, an der gewünschten Stelle in der anderen Mappe einfügen, "Workbook.Saved" auf True setzen und wieder schließen - lässt sich im Prinzip als Makro aufzeichnen und erfordert eigentlich nur eine Anpassung hinsichtlich der Zieladresse.

Alternativ dazu kannst Du das "FileSystemObject" verwenden, um den Text zeilenweise einzulesen, aufzuteilen und in die passenden Zellen eintragen zu lassen - Vorgangsweise etwa so (ungetestet):
01.
... 
02.
'sDatei = Textdatei mit vollem Pfad 
03.
'wTabelle = Zieltabelle 
04.
'iRow = nächste freie Zeile der Zieltabelle 
05.
... 
06.
Set fso = CreateObject("Scripting.FileSystemObject" 
07.
Set oText = fso.OpenTextFile(sDatei, 1) 
08.
aGesamtText = Split(oText.ReadAll, vbCrLF) 'erzeugt ein Array - Inhalt: jeweils eine Textzeile 
09.
oText.Close 'Textdatei wurde vollständig gelesen, daher schließen. 
10.
 
11.
'Als Alternative zum Einlesen in einem Rutsch etwa folgendes Konstrukt: 
12.
'Do Until oText.AtEndOfStream / sLine = oText.ReadLine / ... siehe unten ... / Loop / oText.Close 
13.
 
14.
For Each sLine In aGesamtText 'Alle Zeilen durchgehen, ... 
15.
    aLine = Split(sLine, vbTab) '... anhand der enthaltenen Tabs in Arrayfelder zerteilen und ... 
16.
    With wTabelle 
17.
        .Range(.Cells(iRow, 1), .Cells(iRow, UBound(aLine) + 1)).Value = aLine '... als Array an passender Stelle in die Zieltabelle eintragen. 
18.
    End With 
19.
    iRow = iRow + 1 
20.
Next
Nützlich (da relativ gut nach VBA übertragbar) für ähnliche Situationen könnte auch KB306022 sein.

Grüße
bastla
Bitte warten ..
Mitglied: lena123
03.11.2007 um 15:08 Uhr
hallo bastla,

das mit dem "Workbooks.OpenText", markieren und kopieren ist eine gute Idee, wenn man selbst davor sitzt kommt man manchmal nicht auf die einfachste Lösung;)
Den Code werde ich auch noch ausprobieren.

Vielen vielen Dank!

Gruß lena
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
CSV-Datei nach Excel importieren (5)

Frage von mrvfbnummer2 zum Thema Batch & Shell ...

Webentwicklung
Zahlenwerte von Webseite nach Excel importieren (5)

Frage von AKChris zum Thema Webentwicklung ...

VB for Applications
Import Textdatei von Dateiname aus Zelle (2)

Frage von grasihuepfer zum Thema VB for Applications ...

Microsoft Office
gelöst Excel VBA: Automatische Konvertierung von Textdatei (.txt) zu Exceldatei (.xlsx) (7)

Frage von Booster07 zum Thema Microsoft Office ...

Neue Wissensbeiträge
Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(2)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Netzwerkprotokolle
gelöst Leiten "dumme" Switches VLAN-Tags mit durch? (26)

Frage von coltseavers zum Thema Netzwerkprotokolle ...

Windows Server
gelöst Neues KB für W10 1607 und W2K16 wieder mal nicht im WSUS 3.0, hat das noch jemand? (16)

Frage von departure69 zum Thema Windows Server ...

Netzwerkgrundlagen
Kann auf Freigabe nicht Zugreifen (15)

Frage von leon123 zum Thema Netzwerkgrundlagen ...

Router & Routing
FTTH bzw FTTB Router (13)

Frage von ukulele-7 zum Thema Router & Routing ...