Top-Themen

Aktuelle Themen (A bis Z)

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

Konvertierung von Tabstopp getrennten Textdateien in xls Format mit VBA

Mitglied: Andre05308

Andre05308 (Level 1) - Jetzt verbinden

05.09.2011, aktualisiert 18.10.2012, 5005 Aufrufe, 8 Kommentare

Hallo Administrator.de User,

ich arbeite seit kurzem mit VBA um eine größere Menge von Messdaten in Excel zusammenzuführen und auszuwerten. In diesem Forum habe ich mich angemeldet, da ich schon vom mehreren Beiträgen profitiert habe und die Mitglieder schnelle und kompetente Antworten geben. Außerdem hoffe ich meine Fähigkeiten auszubauen um auch anderen Usern helfen zu können.

Ich bekomme von einem Programm Textdateien mit einem Zahlenteppich ausgeben, der eine variable Anzahl von Zeilen und Spalten hat.
Die Spalten sind durch Tabstopps getrennt und die Zeilen durch Zeilenumbrüche. Alle Dateien befinden sich im selben Verzeichnis und haben verschiedene Dateinamen.

Auszug des Inhalts einer Textdatei:

01.
0,26	0,35	0,41	0,46	0,47	0,48	0,49	0,50	0,52 
02.
0,54	0,53	0,52	0,49	0,46	0,45	0,44	0,46	0,47 
03.
0,49	0,51	0,48	0,45	0,45	0,50	0,50	0,60	0,69 
04.
0,78	1,05	1,12	1,19	1,31	1,42	1,46	1,50	1,54
Nun möchte ich diese Dateien mit der Hilfe von VBA in eine Datei mit dem Format .xls umwandeln.
Die Dateinamen sollen bestehen bleiben.

Ich arbeite mit MS Office 2007

Ich hoffe ich habe keine wichtigen Informationen vergessen.

Vielen Dank im Voraus!
Mitglied: Skyemugen
05.09.2011 um 11:28 Uhr
Aloha,

du weißt aber, dass Excel die Datei auch simpel öffnen kann, wenn du die Endung von .txt in .xls umänderst? (um das für alle Dateien zu tun, reicht ein simpler cmd-oneliner )

Zwar meckert es einmalig beim Öffnen rum aber unterteilt dennoch sauber in Zeilen und Spalten (und man kann dann ja speichern klicken und schon wird es mit der Excelkonfiguration überschrieben)

greetz André
Bitte warten ..
Mitglied: 99045
05.09.2011 um 11:49 Uhr
Hi,

es gibt mehrere Möglichkeiten, die .txt mit Excel zu öffnen:

1. Rechtsklick auf die Textdatei > Öffnen mit > Excel
2. Verknüpfung zu Exec.exe erstellen, Textdatei mit Drag&Drop auf diese Verknüpfung ziehen
3. Exxel > Datei > Öffnen > Dateityp auf .txt stellen > Textdatei öffnen > Fragen nach der Formatierung beantworten (steht eigentlich schon richtig) > Textdatei auswählen > "Fertig stellen"

In allen Fällen als .xls speichern.

Umbenennen muss man die Textdatei dazu nicht.

Wenn's denn doch wirklich mit VBA sein muss: Das ist nicht mein Ding.

Gruß
Bitte warten ..
Mitglied: bastla
05.09.2011, aktualisiert 18.10.2012
Hallo Andre05308 und willkommen im Forum!

Vor laaanger Zeit habe ich hier mal etwas zu einem ähnlichen Thema (allerdings als VBS) verbrochen - wenn Du in Zeile 52 ein Komma weglässt, sollte auch "TAB" als Trennzeichen verwendet werden.

Grüße
bastla
Bitte warten ..
Mitglied: Andre05308
05.09.2011 um 14:48 Uhr
Vielen Dank für die schnellen und sehr hilfreichen Antworten, hat mir sehr geholfen!!! Ich bin echt begeistert von diesem Forum, habe nicht mit so schnellen Antworten gerechnet. Die Lösung von bastla hat mich schnell zm Ziel gebracht, ich musste lediglich noch das .csv in der .bat durch ein .txt ersetzen.

Eine Frage habe ich noch: Kann ich die VBS auch in ein Modul meiner PERSONAL.XLSB schreiben oder zumindest aus einem Modul aus aufrufen?

Oder sollte ich lieber versuchen mich auf VBS umzustellen und nur noch mit vbs Dateien arbeiten?

Grüße André
Bitte warten ..
Mitglied: bastla
05.09.2011 um 15:10 Uhr
Hallo Andre05308!
Kann ich die VBS auch in ein Modul meiner PERSONAL.XLSB schreiben?
Nicht 1:1 - aber Du könntest versuchen, Dich schrittweise an eine VBA-Version heranzutasten (einige Kommentare sind ja dabei); ein eigenes "Excel"-Objekt müsstest Du zB nicht erzeugen, wenn Du ohnehin schon Excel verwendest ...
sollte ich lieber versuchen mich auf VBS umzustellen und nur noch mit vbs Dateien arbeiten?
Nicht unbedingt - von der Systemebene her (wie zB Aufruf per Batch) ist VBS besser verwendbar, ansonsten ist VBA handlicher (Stichwort: Editor) und auf Office "zugeschnitten" - daher je nach Bedarf.

Grüße
bastla
Bitte warten ..
Mitglied: 99045
05.09.2011 um 15:13 Uhr
@bastla

Moin,

hab im Netz den Code gefunden, du kannst ihn ja evtl. für TAB anpassen, wenn du Lust hast? Ich mag VBA nicht.

01.
Option Explicit  
02.
 
03.
Sub Convert_CSV_to_XLS()  
04.
Dim i As Long, verz As String  
05.
Dim dateiForm As String  
06.
'Mit Backslash am Ende  
07.
verz = "C:\Ordner1\"  
08.
'Dateiform  
09.
dateiForm = "csv"  
10.
On Error GoTo fehler  
11.
ChDrive Left(verz, 2)  
12.
ChDir verz  
13.
With Application.FileSearch  
14.
    .NewSearch  
15.
    .LookIn = verz  
16.
    .SearchSubFolders = False  
17.
    .FileType = msoFileTypeAllFiles  
18.
    .Execute  
19.
     For i = 1 To .FoundFiles.Count  
20.
          Application.StatusBar = "Datei " & i & " von " & .FoundFiles.Count & " wird bearbeitet"  
21.
          If Right(.FoundFiles(i), 3) = dateiForm Then  
22.
               Application.ScreenUpdating = False  
23.
               Debug.Print .FoundFiles(i)  
24.
               Workbooks.Open .FoundFiles(i), local:=True  
25.
               ActiveWorkbook.SaveAs Left(.FoundFiles(i), Len(.FoundFiles(i)) - 3) & "xls"  
26.
               ActiveWorkbook.Close False  
27.
               Application.ScreenUpdating = True  
28.
          End If  
29.
     Next i  
30.
End With  
31.
ErrorExit:  
32.
Application.ScreenUpdating = True  
33.
Application.StatusBar = False  
34.
Exit Sub  
35.
 
36.
fehler:  
37.
MsgBox Err.Number & "; " & Err.Description  
38.
Resume ErrorExit  
39.
End Sub
Gruß
Bitte warten ..
Mitglied: bastla
05.09.2011 um 15:31 Uhr
@99045

Ich mag's zwar nicht testen, aber mit der folgenden Zeile 24 könnte das gehen:
               .Workbooks.OpenText .FoundFiles(i) , , , , , , True
Grüße
bastla
Bitte warten ..
Mitglied: 99045
05.09.2011 um 15:45 Uhr
Danke, bastla,
brauchst du auch nicht zu testen, es war nur als evtl. Tipp für den TO gedacht.

Gruß
Bitte warten ..
Ähnliche Inhalte
VB for Applications

Excel Makro zur Konvertierung einer xls oder xlsx in das Frormat xlsm

gelöst Frage von Armin-KVB for Applications3 Kommentare

Liebes Forum, vielleicht könnt Ihr mir wieder bei einem Problem aus der Excel-VBA umgebung weiterhelfen. Folgender Hintergrund dazu: In ...

Microsoft Office

Excel VBA: Automatische Konvertierung von Textdatei (.txt) zu Exceldatei (.xlsx)

gelöst Frage von Booster07Microsoft Office7 Kommentare

Hallo zusammen, ich habe sehr viele Textdateien, die z.B. im Ordner C:\Test\txt\ abgelegt sind. Nun will ich diese Textdateien ...

Windows Server

Direkte Konvertierung von Acronis .tib in Veeam Format möglich?

gelöst Frage von meinermeinerWindows Server8 Kommentare

Hallo Ist eine direkte Konvertierung von Acronis .tib (Acronis Backup & Recovery 11) in ein lesbares Format für Veeam ...

VB for Applications

Excel VBA Datei auswählen, dateipfad und dateiname ohne Format speichern, und in anderem Format speichern

gelöst Frage von Momo2016VB for Applications1 Kommentar

Hallo, ich bin noch relativ neu in VBA und bräuchte eure Hilfe. Und zwar möchte ich vom Benutzer eine ...

Neue Wissensbeiträge
Sicherheit
BSI-Website unsicher und nicht erreichbar
Information von DerWoWusste vor 41 MinutenSicherheit2 Kommentare

Lustig ‎Zertifikat war gültig bis Wednesday, ‎September ‎26, ‎2018 3:46:25 PM Mal sehen, wie schnell sie es merken und ...

Linux Netzwerk

Installation eines Logservers mit Loganalyzer als Debian-VM auf Hyper-V

Anleitung von lcer00 vor 21 StundenLinux Netzwerk

Zuerst sei auf den schönen Beitrag von aqui hier im Forum verwiesen, in dem die loganalyzer-installation bereits beschrieben ist: ...

Humor (lol)
Antennagate 2018
Information von magicteddy vor 21 StundenHumor (lol)2 Kommentare

Da haut der angekaute Elektronikhersteller die teuersten Geräte auf den Markt und bekommt anscheinend die Basics mal wieder nicht ...

Datenschutz

Die Datenkrake Google verlängert ihr Arme mal wieder ein wenig, automatische Anmeldung

Tipp von magicteddy vor 1 TagDatenschutz6 Kommentare

Benutzer mit einem Google Account und gespeicherten Zugangsdaten werden von chrome 69 automatisch bei Google angemeldet, natürlich alles zum ...

Heiß diskutierte Inhalte
Windows Netzwerk
VPN geht, RD nicht
Frage von bigeasyWindows Netzwerk19 Kommentare

Hallo zusammen Ich hab hier ein Problem mit einer Remotedesktop-Verbindung, ich hoffe, jemand kann mir hier bitte weiterhelfen: Wähle ...

Server-Hardware
Temperaturüberwachung Serverraum
gelöst Frage von rctom1Server-Hardware18 Kommentare

Hallo zusammen, ich suche eine geeignete Lösung für eine Temperaturüberwachung mit Alarmsystem für unseren Serverraum. Früher hatten wir ein ...

Video & Streaming
DVD auf Festplatte sichern
Frage von Thor01Video & Streaming14 Kommentare

Hallo, mittlerweile hat meine DVD Sammlung ein alter erreicht wo die eine oder andere DVD schon das Zeitliche gesegnet ...

Firewall
Wesyb Offline
Frage von DkuehlbornFirewall14 Kommentare

Hallo Kollegen, ein Kunde hat von Wesyb die Sicherheitslösung im Einsatz. Seit August scheint deren Internetseite nicht mehr verfügbar ...