Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1408to1412
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Suchprogram für Excel

Suchprogram für Excel
12.02.2015 10:33:03
Oliver
Hallo liebe Forum Freunde,
Ich wende mich an Euch, da ich ein Problem habe das irgendwie durch eine normale Suchfunktion nicht handelbar ist und ich mich mit Makros nicht so gut auskenne.
Ich habe probiert mein Anliegen darzustellen und mit Bilder zu erklären was ich genau von der Suchfunktion möchte.
Geht das überhaupt oder ist das zu kompliziert?
Danke für euer Feedback.
Gruss
Oli
Bild Übersicht
Userbild
Bild Daten:
Userbild
Bild Schritt 1+2:
Userbild
Bild Schritt 3:
Userbild

Schritt 4 + Hilfe zu Schritt 4

Userbild
Userbild
Hier noch das Excel File (Nur Demo)
https://www.herber.de/bbs/user/95706.xlsm

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
so wie ich Dein Anliegen interpretiere
12.02.2015 10:42:22
neopa
Hallo Oli,
... bräuchte man dazu kein VBA. Das kann man auch mit Formeln lösen. Die Frage ist, ob Du das willst.
Gruß Werner
.. , - ...

AW: so wie ich Dein Anliegen interpretiere
12.02.2015 11:14:30
Oliver
Hallo Werner,
Mir spielt es nicht so eine grosse Rolle ob mit Formeln oder VBA.
Wichtig ist mir nur, dass es ein Knopf hat (welcher auch so aussieht und funktioniert) und es einfach
ist ein Suchbegriff einzugeben und gleich unten die Resultate zu sehen.

Nachfrage - AW: Suchprogram für Excel
12.02.2015 10:50:23
Michael
Hallo Oliver!
Du hast doch eine Datentabelle und weißt bei einer Suche ja auch wonach, d.h. nach welcher Spalteninformation (Platform, Projekt... ), Du suchst. Warum reicht Dir da nicht ein Autofilter in der Datentabelle?

Anzeige
Nachfrage - AW: Suchprogram für Excel
12.02.2015 11:12:23
Oliver
Hallo Michael,
Du hast recht, dass ein Normaler Filter reichen würde.
Jedoch möchte ich 1. wissen wie man so etwas macht (Mit Formel oder VBA) und 2. Soll es am Schluss wie ein Programm geben das jeder benutzen kann und simpel suchen.
Gruss

Nachfrage - AW: Suchprogram für Excel
12.02.2015 11:17:39
Klaus
Hallo Oliver,
lege das Makro "FindeAdressen" auf einen Button im Blatt "Übersicht".
Die Zellformatierung wird dabei zerschossen, aber das liegt an deinem Blatt (in Übersicht hat es Rahmen, in Daten hat es keine Rahmen). Rahmen sind mir zu aufwendig.
Sub FindeAdressen()
Const fCol As Long = 1
Const lCol As Long = 6
Const fRow As Long = 3
Const FreeCol As Long = 19
Dim lRow As Long
Dim rSuche As Range
Dim rFinde As Range
Dim SuchWort As String
Const FcopyCol As Long = 1
Const LcopyCol As Long = 17
Const SeeFRow As Long = 10
Dim SeeLRow As Long
With Sheets("Übersicht")
SuchWort = .Range("C5").Value
SeeLRow = .Cells(.Rows.Count, FcopyCol).End(xlUp).Row + 1
.Range(.Cells(SeeFRow, FcopyCol), .Cells(SeeLRow, LcopyCol)).ClearContents
End With
With Sheets("Daten")
.Cells(1, FreeCol).EntireColumn.ClearContents
lRow = .Cells(.Rows.Count, fCol).End(xlUp).Row
For Each rSuche In .Range(.Cells(fRow, fCol), .Cells(lRow, lCol))
If rSuche.Value = SuchWort Then  'hier könnte man statt = auch LIKE einsetzen, um  _
unscharfe Suche zu erlauben
.Cells(rSuche.Row, FreeCol).Value = 1
End If
Next rSuche
.Cells(fRow - 1, FreeCol).Value = "FILTER"
Call DoResetAutofilter(Sheets(.Name), FreeCol, FreeCol, fRow - 1)
.Range(.Cells(fRow - 1, FreeCol), .Cells(lRow, FreeCol)).AutoFilter Field:=1, Criteria1:="1" _
.Range(.Cells(fRow, FcopyCol), .Cells(lRow, LcopyCol)).SpecialCells(xlCellTypeVisible).Copy
End With
With Sheets("Übersicht")
.Cells(SeeFRow, FcopyCol).PasteSpecial
Application.CutCopyMode = False
End With
With Sheets("Daten")
.Cells(1, FreeCol).EntireColumn.ClearContents
End With
End Sub
Sub DoResetAutofilter(wksMySheet As Worksheet, iColFirst As Integer, iColLast As Integer,  _
lRowFirst As Long)
'* in case a user used another autofiler, this makro resets the autofilter to where needed.
Dim lRowLast As Long
With wksMySheet
lRowLast = .Cells(.Rows.Count, iColFirst).End(xlUp).Row + 1
If .AutoFilterMode Then .Cells.AutoFilter 'Turns OFF Autofilter, if any
.Range(.Cells(lRowFirst, iColFirst), .Cells(lRowLast, iColLast)).AutoFilter 'Turns ON  _
Autofilter on given range
End With
End Sub
Grüße,
Klaus M.vdT.

Anzeige
Nachfrage - AW: Suchprogram für Excel
12.02.2015 12:21:32
Oliver
Hallo Klaus.
Danke für dein Makro.
Ich habe es mal so gemacht aber es kommen meistens zu viel Informationen also von gar nicht gesuchten.
Ich habe dir hier das File:
https://www.herber.de/bbs/user/95711.xlsm

Nachfrage - AW: Suchprogram für Excel
12.02.2015 12:28:30
Klaus
Oh ja, da hatte ich noch einen Denkfehler drin - es werden alle Zeilen die NACH der letzten gefundenen kommen mit angezeigt. Quick-and-Dirty Lösung: setzte "lRowLast" im Autofilter-Makro direkt auf Zeile 9999. Die "letzte-Zeile" Regel des Autofiltermakros ist in diesem Fall nicht wichtig, da "SpecialCells(visible)" eh mächtiger ist als die angezeigten Zeilen.
Sub DoResetAutofilter(wksMySheet As Worksheet, iColFirst As Integer, iColLast As Integer, _
lRowFirst As Long)
'* in case a user used another autofiler, this makro resets the autofilter to where needed.
Dim lRowLast As Long
With wksMySheet
lRowLast = 9999
If .AutoFilterMode Then .Cells.AutoFilter 'Turns OFF Autofilter, if any
.Range(.Cells(lRowFirst, iColFirst), .Cells(lRowLast, iColLast)).AutoFilter 'Turns ON _
Autofilter on given range
End With
End Sub
Grüße,
Klaus M.vdT.

Anzeige
Nachfrage - AW: Suchprogram für Excel
12.02.2015 20:05:10
Thomas
Hallo,
darf ich mich hier mit einklinken? Allerdings habe ich keine Ahnung von VBA. Aber diese Problemlösung könnte ich auch benutzen.
Mal ne Frage ist es auch möglich diese gesuchten Daten zu ändern und wieder am selben Platz zurückzuschreiben ?
Ups habe gerade ein x als suchwort getestet ? Leider bricht das Macro dann ab und in der Datentabelle werden alle Zeilen ausgeblendet.
Liebe Grüße Thomas
Thomas

deine Musterdatei?
13.02.2015 08:07:54
Klaus
Hallo Thomas,
ich habe heute gegen Mittag etwas Zeit. Wenn du mir eine Musterdatei vorbereitest, baue ich dir das Makro gerne ein.
Und die Daten zu ändern und zurück zu schreiben sollte kein Problem sein. Es muss nur ein eindeutiges und einzigartiges Erkennungsmerkmal geben, zum Beispiel eine Artikelnummer die nie geändert wird. Notfalls eine Indizierungsnummer über eine Hilfsspalte.
Grüße,
Klaus M.vdT.

Anzeige
Nachfrage - AW: Suchprogram für Excel
13.02.2015 14:44:42
Oliver
Hallo Klaus,
Es funktioniert besser.:)
Nun ich habe am Excel die Kreuze hinten durch spezifische Bergriffe ersetzt wie CAD oder Konzept etc.
Wenn ich nach Projektnummer, Scope etc. suche geht alles sobald ich jetzt aber ein Keyword nehme von den neuen geht der Debuger an und es geht nicht mehr.
Anbei noch das File.
https://www.herber.de/bbs/user/95744.xlsm
Gruss und danke für deine Hilfe.

Nachfrage - AW: Suchprogram für Excel
13.02.2015 20:42:37
Thomas
Hallo Klaus M.vdT,
erstmal besten dank dass du dich mit mein Problem beschäftigst.
deine Lösung mit dem daten suchen ist auch für mich eine Superidee.
Das viele suchen, Filtern und Spaltenausblenden würde für mich wegfallen. Als eindeutige nummer hätte ich die vorgangsnummer Sie gibt es nur einmal und ist dadurch eindeutig. Die Tabellen zwei bis vier wären dann sozusagen meine Arbeitstabellen welche ich einmal definiere und dann immer anwenden könnte.
Deshalb wäre es cool wenn das Macro in den Tabellen zwei bis vier auch funktionieren würde.
Meine Beispieltabelle
https://www.herber.de/bbs/user/95755.xlsm
Liebe grüsse
Thomas
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige