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

Bestimmten Wert aus txt Datei suchen und in Excel ausgeben

Frage Entwicklung VB for Applications

Mitglied: Aerius

Aerius (Level 1) - Jetzt verbinden

26.02.2008, aktualisiert 13:09 Uhr, 8178 Aufrufe, 10 Kommentare

Hallo,

lang gesucht und nichts gefunden.
Ich habe eine txt Datei die folgenden Inhalt hat:

switchName: na01_sw01
switchType: 34.0
switchState: Online
switchMode: Native
switchRole: Principal
...

Jetzt würde ich gern den SwitchNamen auslesen und in ein bestimmtes Excelfeld schreiben lassen.
SwitchName muss aber nicht immer in der ersten Zeile stehen.

Das gleiche Script bräuchte ich dann auch für eine txt Datei mit einer IP Adresse.

Vielen Dank schonmal.
Mitglied: miniversum
26.02.2008 um 10:52 Uhr
Versuchs mal so:
01.
Sub DateiLesenUndSuchen() 
02.
 
03.
  On Error GoTo Fehler 
04.
  Dim Datei As String 
05.
  Dim Fnr As Long 
06.
  Dim Trennzeichen As String 
07.
  Dim Suchbegriff As String 
08.
     
09.
    Trennzeichen = ": " 
10.
    Suchbegriff = "switchName" 
11.
    Datei = "D:\Datei.txt" 
12.
    Fnr = FreeFile 
13.
    Open Datei For Input As #Fnr 
14.
 
15.
    While Not EOF(Fnr) 
16.
      Line Input #Fnr, Zeile 
17.
      tokens = Split(Zeile, Trennzeichen) 
18.
      If tokens(0) = Suchbegriff Then  Range("A1").Value = tokens(1) 
19.
    Wend 
20.
 
21.
    Close #Fnr 
22.
    Exit Sub 
23.
 
24.
Fehler: 
25.
    MsgBox "Es trat ein Fehler beim Öffnen der" & _ 
26.
           " Datei !", 16, "Problem" 
27.
    Exit Sub 
28.
    Resume Next 
29.
End Sub
Bitte warten ..
Mitglied: Aerius
26.02.2008 um 11:14 Uhr
Es erscheint nur die Fehlermeldung.

Die Datei liegt auf einem Netzlaufwerk, hab es aber auch mal lokal getestet, bei beidem der gleiche Effekt.

Vielleicht wäre es auch gut wenn er den Pfad nimmt zur Excel Datei, die liegt nämlich auch immer im selben Ordner wie die Text Dateien.
Bitte warten ..
Mitglied: miniversum
26.02.2008 um 11:28 Uhr
Dann ändere
Datei = "D:\Datei.txt"
in
Datei = Application.ActiveWorkbook.Path & "\Datei.txt"
Und wenn du willst kannst du zur Kontrolle direkt danach noch ein
Msgbox Datei
einbauen.

miniversum
Bitte warten ..
Mitglied: Aerius
26.02.2008 um 11:35 Uhr
Also das mit dem Pfad funktioniert schonmal.

Aber ne Ausgabe in Excel kommt noch nicht, nur die Fehlermeldung.


Ich habe die Fehlermeldung mal entfernt.
Jetzt sagt er mir als Fehlermeldung:

Laufzeitfehler '9':
Index außerhalb des gültigen Bereichs

Vielleicht hilft dir das weiter.
Bitte warten ..
Mitglied: miniversum
26.02.2008 um 11:58 Uhr
Füge mach vor der Zeile
tokens = Split(Zeile, Trennzeichen)
diese ein:
Msgbox Zeile
Dann soltest du sehen was er ausliest.
Vermutlich ist dann die datei nicht ganz so aufgabaut:
switchName: na01_sw01
Es wir imemr nach dem Teil vor dem Trennzeichen (hier also ": ") geschaut und wenn dieser mit dem suchbegriff übereinstimmt der danach genommen.
miniversum
Bitte warten ..
Mitglied: Aerius
26.02.2008 um 12:38 Uhr
er zeigt mir nacheinander die Sachen an

switchName: na01_sw01
switchType: 34.0
switchState: Online
switchMode: Native
switchRole: Principal

dann kommt eine leere Meldung und danach der Laufzeitfehler.

eigentlich müsste er ja nur aufhören wenn er die switchName Zeile gefunden hat und mir das na01_sw01 ausgeben.
Bitte warten ..
Mitglied: miniversum
26.02.2008 um 12:47 Uhr
Dann liegt es daran das noch eine Leerzeile drin ist.
Ersetzt die zeile
tokens = Split(Zeile, Trennzeichen)
Durch diese:
If InStr(1, Zeile, Trennzeichen) Then tokens = Split(Zeile, Trennzeichen)
Dann sollte es gehn.
Bitte warten ..
Mitglied: Aerius
26.02.2008 um 12:52 Uhr
Jetzt hört er zwar nach SwitchName auf, aber dann kommt:

Typen unverträglich.

In der txt datei ist zwischen switchName: und na01_sw01 ein Tabulator
Liegt das vielleicht daran?
Bitte warten ..
Mitglied: miniversum
26.02.2008 um 12:58 Uhr
Ja daran liegt es!
Dann must du das Trennzeichen anders Festlegen.
Entweder du nimmst statt ": " nur ":" oder ":" & vbTab
Bitte warten ..
Mitglied: Aerius
26.02.2008 um 13:09 Uhr
Funktioniert

Mit IP Adressen ebenso, vielen Dank!
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Batch & Shell
Wert in einer TXT Datei suchen (11)

Frage von nolle99 zum Thema Batch & Shell ...

Webentwicklung
HTML Output in eine txt Datei mit VisualBasicScript (2)

Frage von coca22COCA zum Thema Webentwicklung ...

Batch & Shell
Merkwürdige Zeilenformatierung in txt Datei (3)

Frage von miczar zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Windows Server
DHCP Server switchen (22)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...

SAN, NAS, DAS
gelöst HP-Proliant Microserver Betriebssystem (14)

Frage von Yannosch zum Thema SAN, NAS, DAS ...

Grafikkarten & Monitore
Win 10 Grafikkarte Crash von Software? (13)

Frage von Marabunta zum Thema Grafikkarten & Monitore ...