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
GELÖST

Erstellung Textdatei mit bestimmter Satzlänge

Frage Entwicklung

Mitglied: Iwan

Iwan (Level 2) - Jetzt verbinden

14.09.2010, aktualisiert 11:22 Uhr, 4710 Aufrufe, 2 Kommentare

Trennung von Daten mittels Leerzeichen

Hallo zusammen,

für eine Inhousesoftware nutzen wir eine Konfigurationsdatei, die aus einer Kopf- und einer Datenzeile besteht.
Das Problem hierbei ist, das die Daten immer an der selben Stelle anfangen müssen und Abstände zwischen den "Spalten" mit Leerzeichen gefüllt werden.
Beispiel (_ = Leerzeichen):
01.
Zeile1: _Typ___Name_______Konfig___.... 
02.
Zeile2: _XY____Beispiel___08154711_....
Aktuell wird die Datei per Hand editiert, aber da kann es schon mal zu Fehlern kommen, wenn die Daten nicht exakt an der richtigen Stelle stehen.
Nun suche ich eine Möglichkeit, wie ich das per Skript, Batch, VBS, etc. eintragen lassen kann.
Ich müsste irgendwie definieren können, wie lang die Felder sind und das bei Eingabe von weniger Zeichen der Rest mit Leerzeichen aufgefüllt wird.
Tabs funktionieren leider nicht, da dazu die Importsoftware umgeschrieben müsste.
Hat einer eine Idee, wie man das hinbekommt? Google ist heute morgen leider nicht mein Freund


PS: Windows XP Sp3, Office 2003 SP3

*nachtrag*
Ich habe etwas in Excel gefunden, um eine Variable zu begrenzen:
01.
Dim a As String * 3
Werden mehr wie 3 Zeichen eingegeben, dann wird der Rest abgeschnitten.
Werden weniger Zeichen eingegeben, wird mit Leerzeichen aufgefüllt.
Das sieht doch nach dem aus, was ich suche.
Weitere Vorschläge sind trotzdem gerne willkommen ;)

*nachtrag²*
Danke, Tsuki, für den Hinweis, aber ich brauche Leerzeichen statt _ (die waren oben nur als Beispiel dafür).
Ich habe das ganze nun in Excel per Makro gelöst und funktioniert.

PS: wenn ich bei Tsuki auf "Antworten" gehe, erhalte ich eine Suchfenster mit dem Hinweis "Ungültiger Suchbegriff :D.
Mitglied: TsukiSan
14.09.2010 um 10:24 Uhr
Hallo Iwan,

die fehlenden Stellen (Leerzeichen) könntest du eventuell dann noch so replacen:
01.
    Dim a As String * 5 
02.
    a = " Hal" 
03.
    a = Replace(a, " ", "_") 
04.
    MsgBox a
Gruss
Tsuki
Bitte warten ..
Mitglied: BigWim
14.09.2010 um 11:34 Uhr
Ich weiß ja nicht, wie fit Du in Excel bist. Ich hätte noch einen Vorschlag, wie das ganze ohne Script läuft. Der Ansatz wäre diese Formel:

01.
WENN(LÄNGE(F3)>A$1;LINKS(F3;A$1);LINKS(WIEDERHOLEN(" ";A$1);A$1-LÄNGE(F3))&F3)
Die Feldlänge wird in A1 definiert und ist somit variabel - ansonsten den Ausdruck a$1 durch eine Zahl ersetzen

Der erste Teil von Wenn prüft, ob die Daten länger sind als die Spalte und nimmt dann von Links soviel in die Spalte passen.
Der zweite Teil von Wenn befüllt die fehlenden Zeichen von Links mit Leerstellen.

Der Wert, der umzuwandeln ist, wird in Zelle F3 erwartet.

Markus
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst In allen Textdateien eines bestimmten Pfades die Zeilen x bis Ende löschen (2)

Frage von Schloth zum Thema Batch & Shell ...

Batch & Shell
gelöst Bestimmte Zeile einer Textdatei mit Batch auslesen (2)

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

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

Frage von grasihuepfer zum Thema VB for Applications ...

Batch & Shell
gelöst Hilfe bei der Erstellung einer Batchdatei (10)

Frage von peterhart zum Thema Batch & Shell ...

Neue Wissensbeiträge
Windows Tools

Zeit für Energiesparmodus, Bildschirmabschaltung etc. schnell anpassen

Anleitung von hannsgmaulwurf zum Thema Windows Tools ...

Linux Netzwerk

Ping und das einstellbare Bytepattern

(1)

Erfahrungsbericht von LordGurke zum Thema Linux Netzwerk ...

Windows Update

Microsoft Update KB4034664 verursacht Probleme mit Multimonitor-Systemen

(4)

Tipp von beidermachtvongreyscull zum Thema Windows Update ...

Heiß diskutierte Inhalte
Firewall
Richtige Grundeinstellungen der Pfsense für mein Netzwerk (12)

Frage von Spitzbube zum Thema Firewall ...

Switche und Hubs
gelöst Cisco 2960x Stacking über mehrere Etagen (12)

Frage von b3scher zum Thema Switche und Hubs ...