ich versuche mit folgendem Code in einem Tabellenblatt nur die Spalte C durchsuchen zu lassen. Es wird aber das ganze Blatt mit allen Spalten durchsucht. Was ist falsch an dem Code?
Danke für jeden Hinweis.
Gruß
Werner F
Code
Sub Suche()
Dim rng As Range, rngSource As Range, rngStart As Range
Dim sbegriff As Variant
Dim iRow As Integer
sbegriff = Application.InputBox(prompt:="Geben Sie bitte den Namen ein:", Title:="Name _
eingeben")
If sbegriff = "" Then GoTo Weiter
Set rng = Worksheets("Noten").Columns(3).Find(what:=sbegriff, LookIn:=xlValues, lookat:= _
xlPart, SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:= _
False, SearchFormat:=False)
If rng Is Nothing Then
Beep
MsgBox "Der Suchbegriff wurde nicht gefunden!"
GoTo Ende
End If
Set rngStart = rng
Set rngSource = rng.EntireRow
Do
Set rng = Cells.FindNext(After:=rng)
If rng.Address = rngStart.Address Then Exit Do
Set rngSource = Application.Union(rngSource, rng.EntireRow)
Loop
With Worksheets("Auswertung")
iRow = .Cells(Rows.Count, 1).End(xlUp).Row
If iRow = 1 Then iRow = 2 Else iRow = iRow + 3
rngSource.Copy .Cells(iRow, 1)
.Columns.AutoFit
Worksheets("Auswertung").Select
End With
Ende:
Weiter:
Worksheets("Menü").Select
Range("a1").Select
End Sub