Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
840to844
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
840to844
840to844
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Find - Problem

Find - Problem
27.01.2007 23:49:27
Sophie
Hallo,
kann mir einer sagen wie ich dieses hinbekomme?
Folgendes:

Sub finden()
With Worksheets("Werte").Range("B1:B" & Range("A65536").End(xlUp).Row)
Set c = .Find("Wert1", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
i = i + 1
WerteNames(i) = Sheets("Werte").Cells(c.Row, 1)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End Sub

Wenn jetzt nicht das Tabellenblatt "Werte" activ ist funktioniert es nicht.
Sprich wenn ich mich auf dem Tabellenblatt zwei befinde, läuft dieses nicht, was muß ich ändern um diesen Einfluß zu beseitigen.
Noch eine weitere Frage ist es möglich in Kombination zu suchen, sprich in der Spalte A befinden sich die Werte, in Spalte B Zusatzinfos, jetzt möchte ich nur die Werte finden die in Kombination mit den Zusatzinfo XY stehen. Wenn also wie oben nach dem Wert1 gesucht wird, soll dieser nur abgespeichert werden wenn das Zusatzinfo dazu auch passt. Muß ich eine If - Anweisung einbauen oder gibt es andere Möglichkeiten?
Gruß
Sophie

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

Betreff
Datum
Anwender
Anzeige
AW: Find - Problem
27.01.2007 23:54:06
Josef
Hallo Sophie,
es fehlte der (.) vor "Range("A65536").End..."
With Worksheets("Werte")
    Set c = .Range("B1:B" & .Range("A65536").End(xlUp).Row).Find("Wert1", LookIn:=xlValues)
    If Not c Is Nothing Then
        firstAddress = c.Address
        Do
            i = i + 1
            WerteNames(i) = .Cells(c.Row, 1)
            Set c = .FindNext(c)
        Loop While Not c Is Nothing And c.Address <> firstAddress
    End If
End With

Gruß Sepp
Anzeige
AW: Find - Problem
28.01.2007 00:15:21
Erich
Hallo Sepp,
das funzt nicht.
.FindNext bezieht sich hier auf Worksheets("Werte"), klappt aber nur für ein Range - dasselbe wie bei .Find.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Find - Problem
28.01.2007 00:07:43
Erich
Hallo Sophie,
mit
With Worksheets("Werte").Range("B1:B" & Worksheets("Werte").Range("A65536").End(xlUp).Row)
würde es funzen.
Fehlt "Worksheets("Werte")." vor "Range("A65536").End(...", bezieht sich Range... auf das gerade aktive Blatt.
Das hat Sepp ja auch schon geschrieben.
Schöner sähe es z. B. so aus:
Option Explicit
Sub finden2()
Dim lngR As Long, c As Range, firstAddress As String, i As Long, WerteNames(777)
With Worksheets("Werte")
lngR = .Cells(Rows.Count, 2).End(xlUp).Row
With .Range("B1:B" & lngR)
Set c = .Find("Wert1", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
i = i + 1
WerteNames(i) = Sheets("Werte").Cells(c.Row, 1)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Find - Problem
28.01.2007 00:11:23
Erich
Hallo nochmal,
etwas kürzer:
Option Explicit
Sub finden2()
Dim c As Range, firstAddress As String, i As Long, WerteNames(777)
With Worksheets("Werte")
With .Range("B1:B" & .Cells(Rows.Count, 2).End(xlUp).Row)
Set c = .Find("Wert1", LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
Do
i = i + 1
WerteNames(i) = Sheets("Werte").Cells(c.Row, 1)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
End With
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
AW: Find - Problem
28.01.2007 01:10:00
Sophie
Hallo Erich,
Du bist mir zuvor gekommen, habe auch gemerkt, daß Sepp´s Variante nicht funktioniert, bekam eine Fehlermeldung bei Find.Next.
Deine Variante funktioniert super vielen Dank.
Auch an Dich Sepp recht herzlichen Dank.
Schönen Gruß
Sophie
Anzeige
Danke für Rückmeldung und gute Nacht! (oT)
28.01.2007 01:19:06
Erich

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige