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

Frage Entwicklung VB for Applications

GELÖST

VBscript! suchen in txt datei

Mitglied: Catapilla

Catapilla (Level 1) - Jetzt verbinden

10.10.2012, aktualisiert 13:22 Uhr, 2492 Aufrufe, 7 Kommentare

Hallo zusammen,

habe ein Problem das ich nicht lösen kann, deswegen wende ich mich hoffnungsvoll an euch;)

So hier mal die Situtations Beschreibung:

Ich habe Telefonbuch in Form einer Txt Datei mit dem Aufbau:

NST Name Abteilung Raum

123 musterman, max Verkauf K1.11
usw. usw. usw. usw.


ich möchte nun ein VBscripten, dass nach Eingabe Eins der 4 Attribute die anderen ausgibt.

Wenn ich jetzt z.B Hans in die Inputbox eingebe, soll mir das Script alle Einträge aus der txt Datei wiedergeben in dem hans vorkommt. Natürlich soll die Ausgabe alle 4 Attribute wiedergeben.


Mein Problem ist jetzt, dass ich es nicht schaffe die Eingabe zuprüfen ob ein Eintrag in der txt Datei steht.


hier mal meine ersten Schritte:

01.
Dim strSourceFile, objFSO,gucker, Eingabe 
02.
strSourceFile = "F:\Newfolder\phonelist.txt" 
03.
 
04.
set objFSO = CreateObject("Scripting.FileSystemObject") 
05.
gucker = objFSO.OpenTextFile(strSourceFile, 1).ReadAll 
06.
 
07.
Eingabe= InputBox("Suchwort: ") 
08.
09.
10.
.

Soweit so gut ..... wenn ich jetzt "gucker" ausgebe, habe ich alle Einträge aus der txt Datei.

Danke schon mal im vorraus für hilfreichen Input;)
Mitglied: MonoTone
10.10.2012 um 16:05 Uhr
Hi

schau mal das hier an:
01.
Dim strSourceFile, objFSO,gucker, Eingabe 
02.
strSourceFile = "D:\test.txt" 
03.
Dim fs, row, hits, caseSense 
04.
set objFSO = CreateObject("Scripting.FileSystemObject") 
05.
Set fs = objFSO.OpenTextFile(strSourceFile, 1) 
06.
row  = 0 
07.
hits = 0 
08.
Eingabe = InputBox("Suchwort..") 
09.
caseSense = MsgBox("Soll die Suche Casesensitiv sein?",4 ,"Suchoption") 
10.
If caseSense <> 6 Then Eingabe = LCase(Eingabe) 
11.
Do Until fs.AtEndOfStream 
12.
row = row + 1 
13.
gucker = fs.ReadLine 
14.
If caseSense <> 6 Then gucker = LCase(gucker) 
15.
If InStr(gucker, Eingabe) Then 
16.
 MsgBox "Treffer in Zeile: " & row & VbCrLf & gucker 
17.
 hits = hits + 1  
18.
End If 
19.
 
20.
 
21.
Loop 
22.
If hits = 0 Then MsgBox "Keine Treffer"
Ist nur als Beispiel gedacht, von welchem aus du deine Lösung ableiten können wirst.
Bitte warten ..
Mitglied: TsukiSan
11.10.2012 um 08:30 Uhr
Hallo Catapilla,

Möglichkeiten gibt es einige. MonoTone hat Eine aufgezeigt.
Wenn du dein Script nur ergänzen möchtest dann ginge auch
folgendes:
01.
Dim strSourceFile, objFSO,gucker, Eingabe, Ausgabe 
02.
strSourceFile = "D:\phonelist.txt" 
03.
 
04.
set objFSO = CreateObject("Scripting.FileSystemObject") 
05.
gucker = Split(objFSO.OpenTextFile(strSourceFile, 1).ReadAll,vbcrlf) 
06.
 
07.
Eingabe= InputBox("Suchwort: ") 
08.
For i = 0 to Ubound(Gucker) 
09.
	if Instr(LCase(Gucker(i)),LCase(Eingabe)) then 
10.
		Ausgabe = Ausgabe & "Zeile:" & (i+1) & gucker(i) & vbcrlf 
11.
	end if 
12.
Next 
13.
 
14.
msgbox Ausgabe
Gruss
Tsuki
Bitte warten ..
Mitglied: Catapilla
11.10.2012 um 11:05 Uhr
Hey vielen Dank für euere Hilfe

hab mir jetzt ein lauffähiges Script zusammen gebastelt.

Hab da aber noch eine Frage.

Ist die Ausgabe mit einer MsgBox auf 13 Zeilen begrenzt?

wenn ich jetzt z.B "verkauf" eingebe gibt mir die MsgBox nur die ersten 13 aus.. und der rest fällt weg

was kann ich da tun?
Bitte warten ..
Mitglied: TsukiSan
11.10.2012, aktualisiert um 12:13 Uhr
Ist die Ausgabe mit einer MsgBox auf 13 Zeilen begrenzt?
Das wär' mir neu!
Das muss an etwas anderen liegen!

Bastell dir doch mal eine Test-Datei mit jeder Menge den gleichen Namen/Wörtern pro Zeile. Da wird die Messagebox dann ganz schön "gross"!

Gruss
Tsuki

Ps.: Wie sieht denn dein fertiges Script aus?
Bitte warten ..
Mitglied: Catapilla
11.10.2012, aktualisiert um 15:31 Uhr
So wenn ich die Ausgabe mit MsgBox tätige bekomm ich nur 13 Zeilen ?!

Wenn ich aber die Ausgabe mit WScript.Echo tätige bekomm ich eine "laange" Liste.

Gibt es Noch andere Methoden um die Ausgabe zu machen?

hier mal mein Script:

01.
Option Explicit 
02.
'On Error Resume next 
03.
 
04.
 
05.
Dim strSourceFile, objFSO,gucker, Eingabe  
06.
Dim fs, row, hits, ausgabe, i 
07.
Dim temp(600)  
08.
 
09.
strSourceFile = "F:\Newfolder\phonelist.txt"  
10.
row  = 0  
11.
hits = 0  
12.
 
13.
set objFSO = CreateObject("Scripting.FileSystemObject")  
14.
Set fs = objFSO.OpenTextFile(strSourceFile, 1)  
15.
 
16.
 
17.
Eingabe = InputBox("Suchwort: " &vbCr& vbCr&  "NST" & "  oder  " & "Namen" & "  oder  " &  "Abteilung" & "  oder  " & "Raum" , "Telefonbuch" )  
18.
Eingabe = LCase(Eingabe)  
19.
 
20.
 
21.
Do Until fs.AtEndOfStream  
22.
 
23.
	row = row + 1  
24.
 
25.
	gucker = fs.ReadLine  
26.
	gucker = LCase(gucker) 
27.
 
28.
		If InStr(gucker, Eingabe) Then  
29.
 
30.
			temp(hits)= gucker  
31.
			hits = hits + 1 
32.
 
33.
		End If  
34.
 
35.
Loop 
36.
  
37.
	For i=0 To hits 
38.
		ausgabe=ausgabe & temp(i) & vbnewline 
39.
	Next 
40.
 
41.
'WScript.Echo ausgabe 
42.
MsgBox ausgabe 
43.
  
44.
If hits = 0 Then MsgBox "Keine Treffer"
Bitte warten ..
Mitglied: TsukiSan
12.10.2012 um 02:36 Uhr
Mh, da muss ich passen!
Wenn ich mit msgbox oder Wscript.echo eine Testdatei auslese und
viele viele Zeilen anzeigen lasse, dann sind das weit aus mehr aqls nur 13 Zeilen!
Den OK-Knopf sehe ich dann gar nicht mehr.

Also ich weiss es nicht, was es bei dir auf 13Zeilen begrenzt.

Viele Grüße

Tsuki
Bitte warten ..
Mitglied: Catapilla
12.10.2012 um 10:27 Uhr
ahh ok trozdem Danke

mal sehen die Ausgabe über eine msgBox ist sowieso keine so schöne Sache.

Das bekomm ich bestimmt noch anders hin
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Wert in einer TXT Datei suchen
Frage von nolle99Batch & Shell11 Kommentare

Hallo Leute Ich habe ein Problem Ich habe mir von meiner Seite alle URLs in einer TXT gespeichert (30.000 ...

Batch & Shell
Zahlen von Internetseite suchen und in txt-Datei speichern
gelöst Frage von Nick.BBatch & Shell7 Kommentare

Hallo, Ich wollte auf der Internetseite XY einen Wort z.B. Preis suchen und die dahinterstehende Zahl in eine txt-Datei ...

Batch & Shell
Kann man mit einer .txt Datei eine .bat Datei öffnen?
gelöst Frage von HelloWorldBatch & Shell22 Kommentare

Wie schon im Titel beschrieben würde ich gerne durch einfaches klicken auf eine Text oder Word Datei eine Batch ...

PHP
Txt Datei in mysql importieren
gelöst Frage von dax4funPHP5 Kommentare

Hi, Leute habe mehrere txt Dateien auf einem FTP Server und möchte diese Daten in eine mysql DB auf ...

Neue Wissensbeiträge
Linux

Meltdown und Spectre: Linux Update

Information von Frank vor 2 TagenLinux

Meltdown (Variante 3 des Prozessorfehlers) Der Kernel 4.14.13 mit den Page-Table-Isolation-Code (PTI) ist nun für Fedora freigegeben worden. Er ...

Tipps & Tricks

Solutio Charly Updater Fehlermeldung: Das Abgleichen der Dateien in -Pfad- mit dem Datenobject ist fehlgeschlagen

Tipp von StefanKittel vor 3 TagenTipps & Tricks

Hallo, hier einmal als Tipp für alle unter Euch die mit der Zahnarztabrechnungssoftware Charly von Solutio zu tun haben. ...

Sicherheit

Meltdown und Spectre: Wir brauchen eine "Abwrackprämie", die die CPU-Hersteller bezahlen

Information von Frank vor 3 TagenSicherheit12 Kommentare

Zum aktuellen Thema Meltdown und Spectre: Ich wünsche mir von den CPU-Herstellern wie Intel, AMD oder ARM eine Art ...

Sicherheit

Meltdown und Spectre: Realitätscheck

Information von Frank vor 3 TagenSicherheit12 Kommentare

Die unangenehme Realität Der Prozessorfehler mit seinen Varianten Meltdown und Spectre ist seit Juni 2017 bekannt. Trotzdem sind immer ...

Heiß diskutierte Inhalte
Firewall
Penetrationstester-Labor - Firewalls
Frage von Oli-nuxFirewall10 Kommentare

Mich würde interessieren warum man beim Einrichten eines Penetrationstester-Labor (VMs) die Firewall der Systeme deaktivieren soll? Hat das nur ...

SAN, NAS, DAS
Wer kennt sich mit QNAP und CISCO aus ?
gelöst Frage von MachelloSAN, NAS, DAS9 Kommentare

Hallo Zusammen hier im Forum, Ich habe ein QNas 451+ und dieses NAS hat zwei GBit Lan Adapter die ...

Netzwerkgrundlagen
IPv6 Inter-VLAN Routing
gelöst Frage von clSchakNetzwerkgrundlagen9 Kommentare

Hi ich befasse mich gerade mit der Implementierung von IPv6 was bisher (in einem VLAN) korrekt funktioniert inkl. DNS ...

Windows Netzwerk
Zugriff auf den Desktop Ordner eines anderen Rechners in der gleichen Domäne
gelöst Frage von JensNomaWindows Netzwerk6 Kommentare

Guten Abend, ich war neulich mit unserem Admin am Tisch gesessen. Er an seinem Notebook angemeldet mit dem Domänen-Admin, ...