Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1292to1296
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

function mit findnext funktioniert nicht?

function mit findnext funktioniert nicht?
30.12.2012 21:28:14
Rolf
Hallo zusammen
ich habe in einer Zeile in einer Tabelle mehrerer "x" stehen. Nun möchte ich die Adresse der _ Zelle mit dem 1., 2., oder 3. (...) "x" angezeigt bekommen. Dazu habe ich eine

Function mit find und findnext geschrieben.
Diese Funktion klappt, wenn sie aus der Zelle in der Tabelle heraus aufgerufen wird, nur für  _
die 1. Position.
rufe ich sie aus einer Prozedur heraus auf, klappt es auch für die anderen Positionen.
Warum? Was mache ich falsch?
Hier die Datei:
https://www.herber.de/bbs/user/83184.xlsm
_
Hier die Funktion:

Function KreuzSuchen(Position)
With Worksheets(1).Range(Cells(5, 1), Cells(5, 9))
Set firstcell = .Find("x")
Set secondcell = .FindNext(firstcell)
End With
If Position = 1 Then Ausgabe = firstcell.Address
If Position = 2 Then Ausgabe = secondcell.Address
KreuzSuchen = Ausgabe
End Function
Hier die Prozedur:
Sub Kreuzsuchen_testen()
Kreuz1 = KreuzSuchen(1)
MsgBox Kreuz1
Kreuz2 = KreuzSuchen(2)
MsgBox Kreuz2
End Sub
Rolf

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: function mit findnext funktioniert nicht?
30.12.2012 22:56:46
{Boris}
Hi Rolf,
Find in Verbindung mit einer UDF (für die Anwendung im Tabellenblatt) beißt sich - das hatten wir hier früher schonmal diskutiert. Ich weiß zwar nicht mehr genau warum, aber es ist halt so.
Dennoch lass ich die Frage mal offen.
VG, Boris

AW: function mit findnext funktioniert nicht?
30.12.2012 23:17:59
Rolf
Hallo Boris,
gut zu wissen, dass Excel auch nicht perfekt ist. Find scheint aber zu klappen, FindNext wohl dann nicht mehr.
Rolf

AW: function mit findnext funktioniert nicht?
01.01.2013 23:58:53
fcs
Hallo Rolf,
durchsuche die Zellen des Bereiches zellenweise in einer Schleife.
Außerdem sollte der zu durchschende Bereich als Parameter an die Funktion übergeben werden, damit sich die Ergebnisse automatisch aktualisieren, wenn "x" im Zellbereich eingetragen werden.
Gruß
Franz
Function KreuzSuchen(Bereich As Range, Position, Optional varWert As Variant = "x") As Variant
Dim rngZelle As Range
Dim intCount As Integer
KreuzSuchen = "#no " & Position & ". " & varWert
For Each rngZelle In Bereich.Cells
If rngZelle.Value = varWert Then
intCount = intCount + 1
If intCount = Position Then
KreuzSuchen = rngZelle.Address
Exit For
End If
End If
Next
End Function

Anzeige

301 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige