Clever-Excel-Forum

Normale Version: Bestimmte Zelle suchen und dort hinspringen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,
ich suche eine Formel (Funktion?) mit der ich in einer komplexen Tabelle eine bestimmte Zelle finde und dort hinspringt.
Wie stelle ich das an?
Danke für Eure Hilfe!
Martin
ERgänzung: Die Zelle soll das heutige Datum enthalten!
Hallo,


versuche folgenden Code:

Sub sDatum()
Dim rng As range
Set rng = activesheet.usedrange.find(date, lookin:=xlvalues)
Rng.select 'auch wenn das sehr unbeliebt ist
End sub

FAlls es mehrere Zellen mit dem heutigen Datum gibt:

Set rng = activesheet.usedrange.findnext(rng)


Mfg
Hallo und nur ergänzend:
Range.Find in Verbindung mit dem Datum funktioniert nur, wenn das Datum ein Standard-Format hat.
Schon T.M.JJ bringt es aus dem Tritt.
Alleine deshalb nutze ich bei Daten (Plural von Datum) grundsätzlich WorksheetFunction.Match()

Wenn es bereits mit Fenneks Tipp läuft ist es gut, ansonsten lade eine Datei hoch.

Gruß Ralf
Zusatz:
@Fennek:
Geht auch ohne Variable in einem Rutsch:
Code:
ActiveSheet.UsedRange.Find(Date, .Cells(1), xlValues, xlWhole).Select

Gruß Ralf
(18.03.2016, 11:06)mbergold schrieb: [ -> ]Hallo,
ich suche eine Formel...
Martin

Hallo Martin, sieh dir mal HYPERLINK() an...
Hallo,

eine Frage an die Experten:

Die Datums-suche mit

Application.match()

habe ich nur hinbekommen, wenn ich den Suchbereich auf eine Zeile oder eine Spalte begrenzt habe. Sonst wurde nichts gefunden und ein Fehler zurückgegeben.

Ist das so, oder habe ich etwas übersehen?

Mfg
Hallo Fennek,

ja, das ist so.
Hallo,

und eventuelle Probleme mit den Formatierungen zu um gehen, könnte dieser Code helfen, der auch klappt, falls Datum und Uhrzeit vorliegt.

Sub sDatum()
Dim c as range
For each c in activesheet.usedrange
If isdate© or instr(1, c.numberformat, ":", vbtextcompare) then
If int(c.value) = date then c.interior.colorindex =6
End if
Next
End sub
Hi!
Ich greife nochmal den TE auf:
Zitat:ERgänzung: Die Zelle soll das heutige Datum enthalten!

Macht ja nur Sinn, wenn alle Daten des Jahres vorhanden sind (in einer stetigen Reihe).
Gesetzt den Fall, das Inkrement beträgt 1 und die Daten befinden sich in Spalte A ab Zeile 2:

Heute ist der
?Date - DateSerial(Year(Date), 1, 0)
Tag, also der 79.

Folglich reicht einfach:
Cells(Date - DateSerial(Year(Date), 1, 0) + 1, 1).Select
wobei + 1 der Zeilenversatz für die Zeile des 1.1. - 1 ist

Gruß Ralf