Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

bereich einschränken

Forumthread: bereich einschränken

bereich einschränken
07.02.2016 14:52:15
Thomas
Hallo excelfrunde,
ich suche mit dem unten stehende Code den suchwert aus der textbox1.
Ich möchte gern den suchbereich auf die spalten c und h beschränken,
Ich dachte es genügt mit
Set rng = Worksheets("Vorgang").Range("c2:c2000", "h2:h2000")
den bereich einzuschränken. Jedoch sucht er immer noch in anderen bereichen herum.
Kann sich dies jemand anschauen?
liebe grüsse thomas
Private Sub CommandButton1_Click()
Dim xSuche, xAdresse, xErste As String
Dim y As Boolean
Dim arr() As Variant
Dim rng As Range
Dim iCounter, iRowU As Integer
Dim SuchWert As Variant
ListBox1.Clear
If IsDate(TextBox1) Then
SuchWert = CDate(TextBox1)  ' suche nach datum
Else
SuchWert = TextBox1         ' oder suche nach text
End If
Set rng = Worksheets("Vorgang").Range("c2:c2000", "h2:h2000").Find(What:=SuchWert, _
LookIn:=xlValues, lookat:=xlWhole)
If Not rng Is Nothing Then
With Worksheets("Vorgang")
xErste = rng.Address(False, False)
y = True
Do Until xAdresse = xErste
ReDim Preserve arr(0 To 15, 0 To iRowU)
arr(0, iRowU) = .Name
arr(1, iRowU) = rng.Address(False, False)
arr(2, iRowU) = .Cells(rng.Row, 1)
arr(3, iRowU) = .Cells(rng.Row, 2)
arr(4, iRowU) = .Cells(rng.Row, 3)
arr(5, iRowU) = .Cells(rng.Row, 4)
arr(6, iRowU) = .Cells(rng.Row, 5)
arr(7, iRowU) = .Cells(rng.Row, 6)
arr(8, iRowU) = .Cells(rng.Row, 7)
arr(9, iRowU) = .Cells(rng.Row, 8)
arr(10, iRowU) = .Cells(rng.Row, 9)
arr(11, iRowU) = .Cells(rng.Row, 10)
arr(12, iRowU) = .Cells(rng.Row, 11)
arr(13, iRowU) = .Cells(rng.Row, 12)
arr(14, iRowU) = .Cells(rng.Row, 13)
arr(15, iRowU) = .Cells(rng.Row, 14)
iRowU = iRowU + 1
Set rng = .Cells.FindNext(after:=rng)
xAdresse = rng.Address(False, False)
Loop
xAdresse = ""
xErste = ""
End With
End If
'End If
'Next iCounter
If y = False Then
MsgBox "Der Suchbegriff wurde nicht gefunden!"
Else
ListBox1.Column = arr
End If
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: bereich einschränken
07.02.2016 15:11:00
Daniel
HI
du hast bei Range zwei möglichkeiten, die Zellen zu beschreiben:
a) du gibst einen Textstring an, welcher über die Adressen in A1-Schreibweise die Zellen beschreibst.
b) du gibst zwei Zellbereiche an, entweder als Range-Objekt oder als Textstring mit der Zelladresse in A1-Schreibweise
bei dieser Variante umfasst die Range alle Zellen die zwischen dem ersten und zweiten Bereich liegen.
wenn du also nur die Spalten C und H ohne die dazwischenliegenden Zellen haben willst, musst du Variante a) wählen, dh ein Textstring mit der Zelladresse.
das sieht dann so aus: Range("C2:C2000,H2:H20000")
Gruß Daniel

Anzeige
besten dank an Daniel
07.02.2016 16:17:18
Thomas
Hallo Daniel,
jetzt passt es,
unten bei der weitersuche hatte ich das Problem.
hab vielen dank für den tipp.
Liebe grüsse thomas
Set rng = .Range("C2:C2000, H2:H2000").FindNext(after:=rng)
xAdresse = rng.Address(False, False)
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige