Registriert seit: 17.03.2016
Version(en): 2010
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
Registriert seit: 17.03.2016
Version(en): 2010
ERgänzung: Die Zelle soll das heutige Datum enthalten!
Registriert seit: 06.12.2015
Version(en): 2016
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
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
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
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
Zusatz:
@Fennek:
Geht auch ohne Variable in einem Rutsch:
Code:
ActiveSheet.UsedRange.Find(Date, .Cells(1), xlValues, xlWhole).Select
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 10.04.2014
Version(en): Office 2019
(18.03.2016, 12:06)mbergold schrieb: Hallo,
ich suche eine Formel...
Martin
Hallo Martin, sieh dir mal HYPERLINK() an...
Gruß Jörg
stolzes Mitglied im ----Excel-Verein
Freund einer excellenten Power Query-Abfrage
Registriert seit: 06.12.2015
Version(en): 2016
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
Registriert seit: 14.04.2014
Version(en): 2003, 2007
Hallo Fennek,
ja, das ist so.
Gruß Atilla
Registriert seit: 06.12.2015
Version(en): 2016
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
Registriert seit: 12.10.2014
Version(en): 365 Insider (32 Bit)
19.03.2016, 14:56
(Dieser Beitrag wurde zuletzt bearbeitet: 19.03.2016, 14:56 von RPP63.)
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).Selectwobei + 1 der Zeilenversatz für die Zeile des 1.1. - 1 ist
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)