Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
680to684
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
680to684
680to684
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Suchen nach einem bestimmten Namen
18.10.2005 13:46:45
Denis
Hallo zusammen,
ich habe wieder mal ein Problem und bekomme es einfach nicht hin.
Vom Prinzip her ist es einfach nur mit der Umsetzung per VBA klappt es nicht.
Ich will folgendes Erreichen :
Ich will auf in einem EXCEL- Datenblatt nach einem Namen suchen (Bsp. Holzbau) - per VBA soll nun alle Einträge mit dem Wort Holzbau in der 2. Spalte des Datenblattes gefunden werden und automatisch in den Speicher SUCHE geschrieben werden.
Kann mir da jemand weiterhelfen ?
Besten Dank im Vorraus
Gruss
Denis

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Suchen nach einem bestimmten Namen
18.10.2005 13:49:08
Kurt
Hallo,
erstelle dir eine schaltfläche und füge unten stehenden code. Ein paar kleinigkeiten musst du selbst verändern, bitte um feedback.
mfg Kurt
Option Base 1
Option Compare Text

Sub Suchen_und_anzeigen()
Dim Meldung         As Byte, Pos        As Byte
Dim Schleife        As Byte, y          As Byte
Dim Begriff, Suchen()                   As Variant
Dim Bereich                             As Range
Dim n%, x%, xZelle%, yZelle%
Dim xTabelle$(), Adresse$(), Text$
' Suchbegriff eingeben
Begriff = InputBox _
("Suchwort eingeben." & vbCrLf & _
"Willst Du Abbrechen,einfach Enter drücken", "S U C H M O D U S")
If Begriff = "" Then Exit Sub
Pos = InStr(Begriff, "+")
If Pos Then
ReDim Suchen(2)
Suchen(1) = Left(Begriff, Pos - 1)
Suchen(2) = Right(Begriff, Len(Begriff) - Pos)
Schleife = 2
Else
ReDim Suchen(1)
Suchen(1) = Begriff
Schleife = 1
End If
Application.ScreenUpdating = False
' Eigentlicher Suchvorgang (in allen Tabellenblättern)
x = 1
For y = 1 To Schleife
For n = 1 To Sheets.Count
' Letzte Zelle des Bereiches ermitteln. Diese Zelle wird als Startzelle für
' die Suche deffiniert, da Suche nach dieser Zelle, also in erster Zelle
' des Bereiches beginnt.
'Bereich festlegen
Set Bereich = Worksheets(n).UsedRange
With Worksheets(n).Range(Bereich.Address)
xZelle = .Columns(.Columns.Count).Column
yZelle = .Rows(.Rows.Count).Row
End With
With Sheets(n).Range(Bereich.Address)
Set c = .Find(Suchen(y), after:=Cells(yZelle, xZelle), LookIn:=xlValues)
If Not c Is Nothing Then
ErsteAdresse = c.Address
Do
ReDim Preserve Adresse(x): ReDim Preserve xTabelle(x)
xTabelle(x) = Sheets(n).Name
Adresse(x) = c.Address(RowAbsolute:=False, ColumnAbsolute:=False)
Set c = .FindNext(c)
x = x + 1
Loop While Not c Is Nothing And c.Address <> ErsteAdresse
End If
End With
Next n
Next y
Application.ScreenUpdating = True
' Die Anzahl der gefundenen Werte ist (x - 1), wenn keiner
' gefunden wurde dann ist x = 1
Select Case x
Case 1
Meldung = MsgBox("Es wurde leider Nix gefunden", _
vbOKOnly, "G E F U N D E N E   W E R T E")
Exit Sub
Case Else
Meldung = MsgBox("Hurra " & (x - 1) & " Übereinstimmungen gefunden.", _
vbOKOnly, "G E F U N D E N E   W E R T E")
'Tabelle einfügen
Worksheets.Add.Move after:=Worksheets(Worksheets.Count)
On Error Resume Next
With ActiveSheet
.Name = "Suchergebnis"
.[A1] = "Geräteart"
.[B1] = "In der Zelle"
For n = 1 To x - 1
.Cells(n + 1, 1) = xTabelle(n)
.Cells(n + 1, 2) = Adresse(n)
Next n
End With
End Select
End Sub

Anzeige
AW: Suchen nach einem bestimmten Namen
18.10.2005 14:24:03
Denis
Hallo Kurt,
vielen Dank für Deine Ausführliches VBA - ich hab versucht Dein VBA Code auf mein Problem umzuschreiben - da ich mich aber leider in VBA nicht sehr gut auskenne bekomme ich das ganze nicht hin. Kannst Du mir da vielleicht weiterhelfen.
Ich habe folgendes Problem :
- Ich will nicht in allen Tabellen suchen, sondern nur in einer Names ("Daten")
- Dann soll mir der VBA Code in der 2. Spalte von "DATEN" nach dem Suchwort suchen und die gefundenen Worte in ein Feld namens (Suche) schreiben.
Kannst DU mir da ein wenig weiterhelfen ?
Gruss und Danke
Denis
Anzeige
AW: Suchen nach einem bestimmten Namen
18.10.2005 15:26:31
Kurt
Hi,
weiss zwar noch immer nicht genau wie du das haben willst, probier mal diese version aus. Ich verstehe nicht wozu du den gesuchten begriff aufgelistet haben willst, steht ja dann z.b. 10 mal untereinander muster.
mfg
https://www.herber.de/bbs/user/27594.xls
AW: Suchen nach einem bestimmten Namen
18.10.2005 15:58:35
Denis
Danke Dir Kurt - ich werde die Datei gleich anschauen.
es geht um folgendes : Ich suche in meiner Tabelle Daten nach Firmen - Beispielweise nach Gruner - und zwar nicht nach dem genauen Wortlaut "Gruner", sondern nach "...Gruner...". Bei der Suche kommt also heraus :
Gruner - Basel
Gruner - Hannover
Gruner - Leibzig
etc..
und diese Daten will ich in ein Feld schreiben, sodass ich mit Hilfe Sverweis in Excel auf die Daten zugreifen kann.
Gruss und Danke
Denis
Anzeige
AW: Suchen nach einem bestimmten Namen
18.10.2005 16:26:14
Denis
Danke Dir Kurt - es hat geklappt - ich hab den VBA Code umgeschrieben.
Also nochmals vielen Dank.
Gruss
Denis
Bittesehr, gern geschehen !!!
18.10.2005 16:32:28
Kurt
Hallo,
gern geschehen,
mfg Kurt

35 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige