Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1472to1476
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

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

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)

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige