4.1k Aufrufe
Gefragt in Tabellenkalkulation von tomschi Mitglied (879 Punkte)
Hallo zusammen!

Ich grüble nun schon länger über folgendes Problem, bei dem mir noch etwas der entscheidende Ansatz fehlt.

In einer bestimmten Spalte soll primär nach dem Tagesdatum gesucht und soweit vorhanden markiert werden.
Fehlt das Tagesdatum in der betreffenden Spalte, dann soll der Datenbereich auf den Vortag bzw. wenn dieser ebenfalls nicht vorhanden ist, auf den Vorvortag etc. geprüft werden.

Vielleicht hat jemand einen Tipp für mich.

Ciao

Tom

14 Antworten

0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Hallo Tomm,

benutze bedingte Formatierung, Formel ist, =MAX(WENN(F5:F20<HEUTE();F5:F20))

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Danke für die prompte Rückmeldung und Deinen Tipp (!), allerdings möchte ich die entsprechende Zelle per VBA anwählen und markieren.

Weiters solle, falls das Tagesdatum nicht vorhanden ist, nur der gestrige Tag angewählt werden.
Ist dieser ebenso nicht vorhanden, dann sollte die Prüfung auf den Vorvortag erfolgen.

Ciao

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
Deine Prüfung ist doch eingearbeitet in der Formel. Benutze Evalute() und Find, wenn Du es unberdingt mit VBA Machen willst, Du kennst Duich damit ja Klasse aus.
MsgBox Evaluate("=MAX(IF(F5:F20<TODAY(),F5:F20))")

Gruß Hajo
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
bei Dartum sollte man eher Match benutzen statt Find.

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Sorry, aber ich komme einfach nicht weiter.

Weder "find"
ActiveSheet.Range("i2:I400").Find(Evaluate("=MAX(IF(I2:i200<TODAY(),I2:i200))"), , xlValues, xlWhole)

noch

"match"
Application.Match(Evaluate("=MAX(IF(I2:i200<TODAY(),I2:i200))"), Range("i2:i400"), 0)

liefern das gewünschte Ergebnis.

Vielleicht hast Du nochmals einen Ratschlag für mich.

Danke!

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
liefern das gewünschte Ergebnis.

da ist doch ein Einsatz nicht mehr notwendig.
Ich sehe auch keinen Fehler bei Match.

Gruß Hajo
0 Punkte
Beantwortet von tomschi Mitglied (879 Punkte)
Hallo Hajo!

Weder der eine Code noch der andere Code funktioniert bei mir.
Sorry, dass ich Dich damit belästigen muss.

Ciao

Tom
0 Punkte
Beantwortet von hajo_zi Experte (9.1k Punkte)
der match Code liefert bei mir das richtioge Ergebnis 4.
Da Du Dich gewaltig in VBA auskennst (warum sonnst sollte man es in VBA machen) verzichte ich auf Erklärungen.

Gruß Hajo
0 Punkte
Beantwortet von nighty Experte (6.6k Punkte)
hi :-) Tom

stell doch eine Beispieldatei zur verfuegung das Hajo sehen kann woran es liegt ^^

gruss nighty
0 Punkte
...