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

vb script - CSV od. xls datei auslesen und Daten anzeigen

Frage Entwicklung VB for Applications

Mitglied: 77575

77575 (Level 1)

15.04.2009, aktualisiert 19:34 Uhr, 13020 Aufrufe, 10 Kommentare

hallo,

ich suche schon ein paar tage nach anregungen, bin aber bisher noch nicht fündig geworten.
vielleicht gibt's hier anregungen, ich denke mal das VBscript das richtige f. mein vorhaben ist. ich bin allerdings kein entwickler, eher ein bastler der sich beispielscripte anschaut und dann sein glück versucht.

hier mein problem bzw. was ich erreichen möchte.

habe eine csv datei oder xls datei mit daten, wobei jeweils eine zeile als kompletter datensatz anzusehen ist.
diese daten möchte ich nach einem begriff durchsuchen und das ergebnis anzeigen lassen.
wenn der begriff mehrfach vorkommt möchte ich im ergebnis den entsprechenden datensatz auswählen und dann diesen anzeigen lassen.

Besipiel meiner CSV datei:
Vorname,Nachname,PC-Name,Inventar,Arbeistspeicher,Festplatte,Grafikkarte,sonstiges
Max,Mustermann,HeimPC,pc0001,1024MB,120GB,ATI Blah 5000,Notiz Test Blah
Susi,Sorglos,HeimPC02,pc0003,1024MB,120GB,ATI Blah 5000,Test Test : Notiz Test Blah
Rudi,Müller,HeimPC,pc00045,512MB,80GB,ATI 3000,Testnotiz feste IP
Max,Mustermann,OfficePC,pc0006,2048MB,500GB,ATI 8000,Büro im Erdgeschoss

das ist nur ein beispiel. meine csv datei enthält noch mehr spalten.
oder gibt es vielleicht eine applikation die diese anforderungen erledigt.
die daten selbst pflege ich in excel, also bearbeitet werden muss nichts per vb script.

gruss 01
Mitglied: 60730
15.04.2009 um 19:40 Uhr
Servus,

Excel und ein Makro, das "F3" benutzt? - oder ohne Makro gleich auf F3 drücken?

Gruß
Bitte warten ..
Mitglied: LotPings
15.04.2009 um 19:41 Uhr
Gehen tut es mit VBA, VBS, in Excel mit Filtern, mit Batch etc.
Die Frage ist halt wo ist der geringste Aufwand.
Suchst du deinen Begriff in allen Spalten oder nur in einer Bestimmten?
Wie soll die Anzeige/auswahl erfolgen?

Gruß
Bitte warten ..
Mitglied: 77575
15.04.2009 um 19:47 Uhr
Super Tipp. und das ergebniss ist sehr übersichtlich wenn man 15 oder mehr spalten hatm, und dann auf einem 24 zoll tft die ganze zeile entlang hangeln musst.
vielleicht hast du nicht verstanden was ich erreichen will.
die daten stehen in einer excel oder csv datei und ich will z. bsp. wissen welchen rechner oder welche rechner der herr mustermann hat und wie dieser rechner ausgestattet ist. und jetzt stell dir vor du gibst den namen mustermann als suche an und bekommst dann eine auswahl der 2 ider 3 rechner die der herr mustermann hat und suchst dir den entsprechenden rechner aus und bekommst eine übersichtliche seite angezeigt wo du sofort alle daten siehst.
bei deiner variante brauche ich kein csv oder excel, da kann ich auch ne txt datei nehmen und suche mir dann mühsamen alles zusammen.
Bitte warten ..
Mitglied: 77575
15.04.2009 um 19:51 Uhr
hi,
optimal wäre es wenn man in allen spalten suchen kann. es kann sein das ich nicht den namen suche sondern die inventar nummer oder die MAC adresse des rec hners und ich will dann wissen wesen rechner das ist.
mit excel kenn ich überhaupt nich aus. da reicht mein wissen um daten einzutippen.
die anzeige sollte einfach eine seite (gui) sein, die in tabellenform die daten des selektierten rechners anzeigt.

ursprünglich war meine idee das ganze als HTA applikation zu machen, aber vbs datei reicht mir auch.
gruss
Bitte warten ..
Mitglied: LotPings
15.04.2009 um 20:24 Uhr
Zitat von 77575:

die anzeige sollte einfach eine seite (gui) sein, die in tabellenform
die daten des selektierten rechners anzeigt.

Dann nimm einen Autofilter und wenn du eine Zeile hast geh in die Datenmaske.

ursprünglich war meine idee das ganze als HTA applikation zu
machen, aber vbs datei reicht mir auch.
Naja vbs kann nur einzelne Dialoge/Boxen anzeigen keine Formulare. Aber der Aufwand per HTA und
manuell erstelltem Formular ist IMO etwas übersimensionert.

Gruß
Bitte warten ..
Mitglied: 60730
15.04.2009 um 20:26 Uhr
Zitat von 77575:
Super Tipp. und das ergebniss ist sehr übersichtlich wenn man 15
oder mehr spalten hatm, und dann auf einem 24 zoll tft die ganze zeile
entlang hangeln musst.

Servus,

Bitte nicht so pampig....

vielleicht hast du nicht verstanden was ich erreichen will.

Ich glaube leider doch...
ich bin allerdings kein entwickler
ursprünglich war meine idee das ganze als HTA applikation (für Lau oder Low) zu machen (lassen), aber vbs datei reicht mir auch.
mit excel kenn ich überhaupt nich aus. da reicht mein wissen um daten einzutippen.

Nee sorry - bei P wie Pampig und U wie für Umme - ist bei dem Wetter nicht mein Bereich

Ansonsten darfs du gerne mal in meinen Anleitung stöbern - das Rad mußt du nicht neu erfinden (lassen).

Gruß
Bitte warten ..
Mitglied: 77575
15.04.2009 um 20:41 Uhr
Zitat von LotPings:
>
Dann nimm einen Autofilter und wenn du eine Zeile hast geh in die
Datenmaske.

bahnhof. was Autofilter ? Datenmaske?
ich vermute das das excel funktionen sind.



> ursprünglich war meine idee das ganze als HTA applikation
zu
> machen, aber vbs datei reicht mir auch.
Naja vbs kann nur einzelne Dialoge/Boxen anzeigen keine Formulare.
Aber der Aufwand per HTA und
manuell erstelltem Formular ist IMO etwas übersimensionert.


nach meinem verständiss basieren HTA applikationen auf scriptsprachen wie vb script. so das der aufwand nicht wirklich sehr viel größer sein sollte, f. jemanden der sich damit auskennt. und da liegt der hund begraben.ich kenne mich zuwenig damit aus und bin kein programmierer.
wahrscheinlich werde ich mir eine textdatei basteln in die ich alles formatiert reinschreibe und wenn ich was suche einfach in der textdatei suchen.
ne vbs /hta wäre halt etwas schicker gewesen.

gruss
Bitte warten ..
Mitglied: LotPings
15.04.2009 um 21:11 Uhr
Zitat von 77575:
bahnhof. was Autofilter ? Datenmaske?
ich vermute das das excel funktionen sind.

Richtig, wenn die Daten in Excel liegen warum in die Ferne schweifen. Die aktuellen Excel-Versoinen hab ich zwar zugunsten OOo links liegen lassen, aber den Autofilter sollte es noch geben. Wenn du den aktivierst bekommst in der Kopfzeile deiner Tabelle DropDownListen mit denen du Vorgaben machen kannst was angezeigt wird (jeweils Elemnete der Spalte) Im Menu Daten gibt es ein Punkt Maske der die Daten der aktuellen Zeile als Tabelle übersichtlich untereinander auflistet. Und das wolltest du doch wenn ich Dich richtig verstanden habe?

nach meinem verständiss basieren HTA applikationen auf
scriptsprachen wie vb script. so das der aufwand nicht wirklich sehr
viel größer sein sollte, f. jemanden der sich damit
auskennt. und da liegt der hund begraben.ich kenne mich zuwenig damit
aus und bin kein programmierer.
Wenn Andere das machen (können/wollen) ist der eigene Aufwand gering

wahrscheinlich werde ich mir eine textdatei basteln in die ich alles
formatiert reinschreibe und wenn ich was suche einfach in der
textdatei suchen.
ne vbs /hta wäre halt etwas schicker gewesen.
Nee, bleib mal in Excel, siehe oben ist für alle einfacher.

Gruß
Bitte warten ..
Mitglied: 77575
15.04.2009 um 21:23 Uhr
Zitat von LotPings:
Richtig, wenn die Daten in Excel liegen warum in die Ferne schweifen.
Die aktuellen Excel-Versoinen hab ich zwar zugunsten OOo links liegen
lassen, aber den Autofilter sollte es noch geben. Wenn du den
aktivierst bekommst in der Kopfzeile deiner Tabelle DropDownListen mit
denen du Vorgaben machen kannst was angezeigt wird (jeweils Elemnete
der Spalte) Im Menu Daten gibt es ein Punkt Maske der die Daten der
aktuellen Zeile als Tabelle übersichtlich untereinander
auflistet. Und das wolltest du doch wenn ich Dich richtig verstanden
habe?


Ahh, danke.
das klingt vielversprechend. das schaue ich mir auf alle fälle an und vielleicht ist das mit vbs dann eh hinfällig.


Wenn Andere das machen (können/wollen) ist der eigene Aufwand
gering
den vorwurf hab ich erwartet und kann ihn auch verstehen. eigentlich ist das ganze nur ein "nice to have" und es besteht keine echte notwendigkeit. ich könnte es auch in excel suchen und mich durchwurschtln wenn ich was suche, hab ich bisher gemacht oder alles übersichtlich in eine textdatei schreiben.
es kann ja durchaus sein das es was vergleichbares bereits gibt und hier jemand bereitstellen kann oder etwas ähnliches das ich mir nur anpassen muss.
zu anpassen reicht mein wissen , aber zum komplett selbst schreiben eben nicht. und ehrlich gesagt fehlt mir die zeit in der täglichen arbeit mich auch noch intensiv damit auseinandersetzen zu können.

aber der tipp und die kurze beschreibung zu excel hilft mir sicher schon weiter. das soll aber niemand davon abhalten hier sein wissen zu teilen, falls er etwas was ich ursprünglich gesucht habe , bereits hat.
das würde sicher auch anderen helfen. gerade wenn man solche daten hat, f. die sich eine datenbank nicht lohnt. und so eine vbs/HTA lösung die komplett offline mit nur 2 dateien funktioniert ist doch ne feine sache.

gruss
Bitte warten ..
Mitglied: MonoTone
22.04.2009 um 14:24 Uhr
Ich habe mal ein Beispiel Script in VBS geschrieben zum "Auslesen" einer Excel File, funktioniert aber NUR mit excelfiles:
01.
'Excel öffnen 
02.
Dim Excel 
03.
On Error Resume Next 
04.
Set Excel = GetObject(, "Excel.Application") 
05.
Err.Clear 
06.
If Excel <> "Microsoft Excel" Then 
07.
Set Excel = WScript.CreateObject("Excel.Application") 
08.
End If 
09.
 
10.
Excel.Visible = False 'True wenn man es sehen will 
11.
'Eingabe des Pfads + Dateinamen, alternativ(wenn feststeht wo sie liegt): 
12.
'Pfad="C:\DEINPFAD\undDatei.xls" 
13.
Pfad=InputBox("Wo liegt die Exceldatei(BSP: D:\test.xls)","Pfadangabe") 
14.
Excel.workbooks.open(Pfad) 'öffnet file 
15.
suchwort = InputBox("Nach welchem Wort soll gesucht werden?","Suchworteingabe")'eingabe des zu suchenden Worts 
16.
'alternativ wenn das suchwort feststeht: 
17.
'suchwort = "suchwort" 
18.
'same mit zei und spa (mal mit Bsp spalte 5(entspricht E)  und zeile 2345): 
19.
'spa=5 
20.
'zei=2345  
21.
zei = InputBox("Wieviele Zeilen sind vorhanden?","Zeilenabfrage")'eingabe der zu durchscannenden Zeilen.... 
22.
spa = InputBox("Wieviele Spalten sind vorhanden?","Spaltenabfrage") ' ..und spalten der exceldatei 
23.
 
24.
Call lesen(zei,spa,suchwort) 
25.
Function lesen(lzei,lspa,wort) 
26.
 
27.
For zeile=1 To lzei 
28.
For spalte=1 To lspa 
29.
 
30.
If InStr(1,Excel.Cells(zeile, spalte).Value,wort) <> 0 Then 'nach übereinstimmung suchen 
31.
 
32.
For a=1 To lspa 
33.
ergebnis = ergebnis & " " & Excel.Cells(zeile, a).Value 
34.
 
35.
Next 
36.
WScript.Echo "Zeile: " & zeile & " Datensatz: " & ergebnis 'gibt Zeile(Datensatz) aus bei vorhandener Übereinstimmung in irgendeiner Zeile/Spalte 
37.
ergebnis = "" 
38.
Exit For 
39.
End If 
40.
Next 
41.
Next 
42.
End Function
Ich habe leider nicht ganz verstanden was genau mit den ausgelesenen Zeile geschehen soll :?
Die einzugebenen Werte kann man natürlich auch festlegen im Script, dann funktioniert es völlig automatisch ohne Eingabe" Aufforderungen"
Und mit einer CSV Datei würde das aber nicht klappen :D

Hoffe es ist ein kleine Hilfe, schönen Gruß Mono
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

(8)

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
VB for Applications
gelöst Bestimmte Spalten aus CSV-Datei auslesen (VBS) (9)

Frage von Gurkenhobel zum Thema VB for Applications ...

Outlook & Mail
gelöst Email Anhänge speichern VB Script aber nur bestimmte Dateitypen (Outlook) (4)

Frage von LindeUnimog zum Thema Outlook & Mail ...

Batch & Shell
gelöst PowerShell, Log Datei auslesen, bei Änderungen E-Mail senden (12)

Frage von swissbull zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Microsoft
Ordner mit LW-Buchstaben versehen und benennen (21)

Frage von Xaero1982 zum Thema Microsoft ...

Netzwerkmanagement
gelöst Anregungen, kleiner Betrieb, IT-Umgebung (18)

Frage von Unwichtig zum Thema Netzwerkmanagement ...

Windows Update
Treiberinstallation durch Windows Update läßt sich nicht verhindern (17)

Frage von liquidbase zum Thema Windows Update ...