Registriert seit: 11.03.2015
Version(en): mittlerweile meistens 2019
30.07.2018, 16:31
(Dieser Beitrag wurde zuletzt bearbeitet: 30.07.2018, 16:32 von Der Steuerfuzzi.)
Ich hatte schon eine Excel-Datei erwartet, in der das Ergebnis entsprechend in den jeweiligen Zellen eingetragen ist. So kann ich jetzt wieder raten, ob nur eine ID ausgegeben werden soll oder beide. Denn wenn der Suchbegriff "SchülerID" ist, dann würden ja beide Einträge gefunden. Oder sollte nach der Nummer gesucht werden und diese ist dann nur einmal vorhanden?
Gruß
Michael
Registriert seit: 10.04.2014
Version(en): Office 2019
Hallo, ist eine csv wegen des Datenschutzes schwierig...? Wenn nicht poste doch bitte zwei bis sieben csv-Dateien...
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Registriert seit: 27.07.2018
Version(en): XP
Hallo
ich kann keine CSV Datei hochladen.
ES sollte nach der Nummer gesucht werden und diese ist dann nur einmal vorhanden! =)
Registriert seit: 16.08.2017
Version(en): 2007 / 2010 / Web
Registriert seit: 10.04.2014
Version(en): Office 2019
(30.07.2018, 16:42)lulu183 schrieb: Hallo
ich kann keine CSV Datei hochladen...
Hallo, dann bin ich zumindest raus... Viel Erfolg.
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Folgende(r) 1 Nutzer sagt Danke an Jockel für diesen Beitrag:1 Nutzer sagt Danke an Jockel für diesen Beitrag 28
• lulu183
Registriert seit: 11.03.2015
Version(en): mittlerweile meistens 2019
Da ja schon ein ordentliches Grundgerüst vorhanden war, will ich mal nicht so sein. Code auf Basis von Vermutungen angepasst und (hoffentlich) ordentlich eingerückt:
Code:
Sub Pro1_Test()
Dim sPath As String
Dim sSearchPath As String
Dim FileName As String
Dim InputData As String
Dim vTmp As Variant
Dim vTmpp As Variant
Dim vnt As Boolean
Dim such As String
Dim i As Long
'###############################################################################
' Folgende Anweisung löscht den Inhalt der aktiven Tabelle
ActiveSheet.Cells.ClearContents
'Frage nach den Suchbegriff
such = InputBox("Geben Sie den Suchbegriff ein:", "Suche...")
such = Replace(such, " ", "") ' Leerzeichen entfernen
If such = "" Then Exit Sub ' Bei Abbrechen Prog. sofort beenden
' Suche in alle .CSV Dateien
sPath = "N:\Archiv\Archiv12\"
sSearchPath = sPath & "*.csv"
FileName = Dir(sSearchPath)
If FileName <> "" Then
Do While FileName <> ""
Open sPath & FileName For Input As #1
Do While Not EOF(1)
Line Input #1, InputData
' Zeile mit Suchwort gefunden
If InStr(1, InputData, such) > 0 Then
vnt = True
vTmp = Split(InputData, "$")
Range("B7") = FileName
Range("A12:C12") = Split(vTmp(0), ";")
For i = 1 To UBound(vTmp)
If vTmp(i) <> "" Then
vTmpp = Split(vTmp(i), ";")
Range(Cells(i + 12, 1), Cells(i + 12, 1 + UBound(vTmpp))) = vTmpp
End If
Next
End If
Loop
Close #1
If vnt Then Exit Do 'Datensatz gefunden, weitersuchen nicht mehr notwendig!?
FileName = Dir ' nächste Datei durchsuchen
Loop
End If
If Not vnt Then MsgBox "Suchbegriff nicht gefunden!"
End Sub
Gruß
Michael
Registriert seit: 27.07.2018
Version(en): XP
Hallo Michael,
danke für den Code, allerdings löst es noch nicht mein Problem.
Das exportiert mir leider immer noch die gesamte CSV, während ich nur die einzelne Zeile mit Suchwert wollte.
' Zeile mit Suchwort gefunden
If InStr(1, InputData, such) > 0 Then
Hier sollte dann folgendes passieren:
- gefundene CSV Datei mit dem gesuchten Suchwert öffnen
- Zeile für Zeile überprüfen in welcher Zeile das Suchwert sich befinde
- die gefundene Zeile mit gesuchten Wert auf Excel übergeben gesplittet
Danke! Danke ! Danke! dafür dass du mir hilfst !!!
Registriert seit: 11.03.2015
Version(en): mittlerweile meistens 2019
31.07.2018, 16:45
(Dieser Beitrag wurde zuletzt bearbeitet: 31.07.2018, 16:45 von Der Steuerfuzzi.)
(31.07.2018, 16:32)lulu183 schrieb: Das exportiert mir leider immer noch die gesamte CSV, während ich nur die einzelne Zeile mit Suchwert wollte.
Wenn Deine Ausführungen oben stimmen, kann das gar nicht sein, da dass Makro abbricht, wenn er den Wert einmal gefunden hat. Es könnte natürlich sein, dass die csv-Dateien anders aussehen als erwartet. Aber Du willst ja keine csv-Datei hochladen ...
Gruß
Michael
Registriert seit: 27.07.2018
Version(en): XP
Hallo =)
also die CSV Datei kann ich nicht hochladen.
Es ist aber nichts anderes als das was ich bisher geschrieben habe.
A1;A2;A3;$A4;;A5;A6;$A7;$A8;A9;A10;A11;A12;A13;A14;$A15;A16;
B1;B2;B3;$B4;;B5;B6;$B7;B8;B9;$B10;B11;$B12;
C1;C2;C3;$B4;;$C5;$C6;C7;C8;C9;$C10;$C11;$C12;$C13;
Du kannst es dir so vorstellen:
BESTELLUNG01;DATUM;KUNDENNUMMER;;$KATEGORIENUMMER_ARTIKEL;;KUNDENNUMMER;ARTIKELNUMMER;;$KATEGORIENUMMER_ARTIKEL;;KUNDENNUMMER;KATEGORIENUMMER_ARTIKEL;FARBE;
(Pro Kunde bzw. KUNDENNUMMER eine Zeile )
Jede Zeile kann unterschiedlich lang sein. Es kommt immer darauf an wie viele Artikel bestellt worden sind und welcher Art von Artikel.
Mein Suchwort ist die Kundennummer (die kommt in der gesuchten Zeile öfter vor).
Mein Ziel ist anhand der Kunden Nummer, die richtige CSV zu finden mit der richtigen Zeile die die Kundennummer beinhaltet und NUR diese dann auf EXCEL zu importieren. Selbstverständlich danach gesplittet.
Wenn ich das Programm so abspielen lasse importiert er mir die ganze Datei, und ich habe alle Kundennummer stehen mit jeweils alle Artikeln gesplittet.
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
Moin!
Zur Vorsicht mal die Nachfrage:
Du verwendest ein 16 Jahre altes Excel?
Professionell, also als Produktiv-System?
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)