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

Zeile mehrfach ausgeben

Frage Entwicklung

Mitglied: Uppe

Uppe (Level 1) - Jetzt verbinden

27.10.2010 um 22:57 Uhr, 2686 Aufrufe, 2 Kommentare

Hallo,

ich habe eine Datei in der Form:

Meldung: blablabla
....
Rechner: aaa, bbb, ccc
...
Meldung: blublu
...
Rechner: ddd
...
usw.

Zwischen den mich interessierenden Zeilen (mit Rechner:, Meldung: beginnend) stehen noch beliebige Zeilen.

Ich möchte daraus machen:

Meldung: blablabla | aaa
Meldung: blablabla | bbb
Meldung: blablabla | ccc
Meldung: blublu | ddd



Habe mir gedacht, dass folgender Code doch machen sollte, was ich möchte:
01.
.... 
02.
Do While Not nowFile.AtEndOfStream 
03.
     nowLine = nowFile.readline 
04.
     If Instr(nowLine, "Meldung:") Then 
05.
           Text=nowLine 
06.
           bWrite=true 
07.
     End If 
08.
     If bWrite And InStr(nowLine, "Rechner:")  Then 
09.
           Rechner = Split(nowLine," ") 
10.
           For i = 1 to Ubound(Rechner) 
11.
                Text(i)=Text & " | " & Rechner(i) 
12.
           Next i 
13.
     End If 
14.
     ... 
15.
Loop
Aber leider bekomme ich eine Fehlermeldung bei Text(i) : Typen unverträglich

Wie kann ich aus einer Zeile mehrere machen. Ich weiß aber eben vorher nicht wieviele es sind.

Danke und Gruß
Uppe
Mitglied: bastla
27.10.2010 um 23:28 Uhr
Hallo Uppe!

"Split()" ist schon ok, aber die Schleife in Zeile 10 muss bei 0 beginnen [Edit] 1 passt auch - dadurch wird der Text "Rechner:" übersprungen [/Edit]

Außerdem: "Text()" müsste als Array deklariert worden sein (wobei ich mich frage, wozu das Array gut sein soll), und es gibt auch bereits eine einfache Variable "Text" - es könnte hier aber genausogut ein String verwendet werden, etwa:
GesamtText = GesamtText & vbCrLf & Text & " | " & Rechner(i)
Wenn tatsächlich später noch ein Array gebraucht wird, ließe sich der "GesamtText" wie folgt zerlegen:
TextArray = Split(Mid(GesamtText, 3), vbCrLf)
Grüße
bastla
Bitte warten ..
Mitglied: Uppe
27.10.2010 um 23:44 Uhr
Hallo bastla,

das war's. Redim Text(Ubound(Rechner)) und schon passt es.

Danke und Gruß
Uppe
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
Microsoft Office
Excel Nachfrage: Datum aus Spalte ausgeben (2)

Frage von PronMaster zum Thema Microsoft Office ...

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

Frage von PinkFLuffyUnicorn zum Thema Batch & Shell ...

Microsoft Office
gelöst Excel: Wenn Wert in Spalte A dann kopiere Zeile (8)

Frage von michi1983 zum Thema Microsoft Office ...

Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Flatrates
DeutschlandLAN der Telekom - welche internen IPs? (19)

Frage von qualidat zum Thema Flatrates ...