Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Erweiterte Suchfunktion
#1
Hallo in die Runde, 

ich habe folgendes Problem. 
Ich möchte über die Suchfunktion zwei Excel-Datein gleichzeitig durchsuchen, z.B. über Nachnamen (Spalte C) oder Geburtsdatum (Spalte H).  

Jede Excel-Datei hat verschiedene Sheets, aber mit dem gleichen Aufbau.

Mir ist bewusst, dass ich ein Makro schreiben muss, weiß aber nicht wie. 

Kann mir da einer weiterhelfen? 

LG
MK-184
Antworten Top
#2
Hi

Deine Ausführungen sind sehr allgemein formuliert.  Wie sind den deine VBA Kenntnisse? Je wenige umso deutlicher solltest du uns deine Datei beschreiben oder besser noch zeigen.

Gruß Elex
Antworten Top
#3
Hola,

verlinkst du bitte deine Fragen in den verschiedenen Foren gegenseitig?
Danke.

Gruß,
steve1da
Antworten Top
#4
Hi,

benutze den Makrorekorder:
  1. Starten
  2. nötige Schritte durchführen
  3. Beenden
  4. Code hier posten
Dann können die Helfer mit Dir den Code bereinigen und verallgemeinern.
Antworten Top
#5
Hallöchen,

ich denke, auch mit einem Makro musst Du die Dateien nacheinander durchsuchen Sad
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#6
Hallöchen,

sorry für die verspätete Antwort.

Anbei habe ich beispielhaft mal eine Excel-Tabelle erstellt.
Diese Datei wird für des Ereignis (unterscheidet sich im Datum) erstellt. Jeder Reiter ist gleich aufgebaut.

Ich möchte nun Datei AV_10_19 öffnen und z.B. mit der Tastenkombination "strg+m" eine Suchfunktion aktivieren, die gleichzeitig die Datei "AV_04_19" im Hintergrund öffnet und auch durchsucht.
Als Suchfaktoren werden Nachnamen benutzt, es sei denn, es ist ein häufiger Nachname wie Müller, da wird soll über Geburtsdatum gesucht werden.

Die Datei liegen wie folgt ab:

D:\Data\XXX\Desktop\AV\AV_10_2019\AV_10_2019.xlsx
D:\Data\XXX\Desktop\AV\AV_04_2019\AV_04_2019.xlsx

Ich hoffe, ich konnte es jetzt ein wenig verständlicher darstellen.

LG
MK-184

PS: Meine VBA Kenntnisse gehen gleich gegen null....


Angehängte Dateien
.xlsx   AV_10_2019.xlsx (Größe: 14,29 KB / Downloads: 1)
Antworten Top
#7
(13.03.2019, 12:54)steve1da schrieb: Hola,

verlinkst du bitte deine Fragen in den verschiedenen Foren gegenseitig?
Danke.

Gruß,
steve1da

Hallo,

Unbefriedigte Fragen zu verlinken erscheint mir genauso sinnvoll wie halbe Filme auf YouTube hochzuladen.
Verlinkt doch besser befriedigende Antworten.
Und: vielleicht wäre die Einführung eines "Langfrist Dankeschön's", welches man frühestens nach 3 Monaten als OP geben kann, eine gute Sache.

Viele Grüße,
Bernd P
Antworten Top
#8
Hi
 
Suchvorgaben sind so weit gut beschrieben.
Leider machst du keine Ausführungen was du dir als Ergebnis erwünscht, beziehungsweise wo es aufgeführt werden soll.
 
Hier mal ein erster Entwurf.

.xlsm   Suchmaske.xlsm (Größe: 19,22 KB / Downloads: 4)

Gruß Elex
Antworten Top
#9
Hi. 

Ich würde mir gerne gleich die Zeilen anzeigen lassen (wie bei der normalen Suchfunktion). 

MfG 
MK-184
Antworten Top
#10
Hi

Zitat:Ich würde mir gerne gleich die Zeilen anzeigen lassen (wie bei der normalen Suchfunktion).

Ersetze vorhandenen Code mal durch diesen und es sollten erstmal alle Treffer angezeigt werden.
Code:
Public Sub Suche()
Dim i As Long, j As Long, Anzahl As Long, SD As Long
Dim SN As String, firstAddress As String, DateiNamen As String, strPfad As String
Dim c As Range

 strPfad = Range("B3").Value2 & "\"  'Dateipfad
 SN = Range("B12").Value2  'gesuchter Name
 SD = Range("B13").Value2  'gesuchte Geb.Datum
 
 For j = 1 To Range("A5").Value2  'schleife alle Dateiennamen
   DateiNamen = Range("B3").Offset(j).Value2
   On Error Resume Next
   Workbooks.Open strPfad & DateiNamen
   If Err.Number = 1004 Then
     MsgBox Err.Description    'Datei Pfad oder Name falsch
   Else
     For i = 1 To Sheets.Count    'schleife alle Blätter in der Datei
         Sheets(i).Select
         With Sheets(i).Columns("C")
         Set c = .Find(SN, LookIn:=xlValues, LookAt:=xlWhole)
          If Not c Is Nothing Then
             firstAddress = c.Address
             Do
               If SD = 0 Then
                  c.Activate
                  MsgBox "weiter"
               Else
                  If c.Offset(, 3).Value2 = SD Then
                     c.Activate
                     MsgBox "weiter"
                  End If
               End If
               Set c = .FindNext(c)
             Loop While Not c Is Nothing And c.Address <> firstAddress
          End If
         End With
     Next i
     ActiveWorkbook.Close
   End If
 Next j

On Error GoTo 0
End Sub

Entspricht das so weit deinen Vorstellungen?
Wie soll es dann weiter gehen? Welche Optionen soll es bei einem Fund geben?

Gruß Elex
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste