Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Datum suchen in Auswahl

Datum suchen in Auswahl
Leitz
Hallo!
Hilfe! Werde noch wahnsinnig mit dem Ding!!
Habe zum x Mal gedacht es funktioniert, und dann.....
Ich habe jetzt eine Beispieltabelle erstellt und sende sie mit.
https://www.herber.de/bbs/user/68265.xls
Ich möchte die Zeile des letzten Datums (Spalte A) in Kostenstelle 2 (Zeile 26 bis 70) mit der Übereinstimmung von Zelle E3 finden.
Das wäre in meinem Fall die Zeile 50!
Ausgegeben wird aber die Zeile 37 (letztes Datum des ersten Blocks)
Ich habe gedacht der Code (denn ich sowiso nicht verstehe) sucht das letzte Datum?
vRow = Application.Match(CLng(Datum), Range("A1:A" & lngEinfügeBasis), 1)
Ich hätte gerne:
1. Nachsehen ob in der Kostenstelle überhaupt ein Datum steht (mache ich mit ersten Teil, und funktioniert denke ich zumindest).
2. Wenn ein Datum enthalten ist dann soll bei einer Übereinstimmung das letzte Datum der Kostenstelle gefunden werden (im Beispiel Zeile 50).
3. Ist das Vorgabedatum kleiner als die eingetragenen Datums dann soll die oberse Zeile der Kostenstelle ausgegeben werden (im Beispiel Zeile 26).
4. Ist das Vorgabedatum größer als das allerletze Datum der Kostenstelle dann soll die Zeile des letzten Datums ausgegeben werden(im Beispiel Zeile 68 wenn das Vorgabedatum 22.01.2010 oder höher ist).
Bitte um Eure Hilfe!
Gruß
Leitz G.
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datum suchen in Auswahl
26.02.2010 18:05:07
ChristianM
Hallo Leitz,
Deine Codezeile "vRow = Application.Match(CLng(Datum), Range("A1:A" & lngEinfügeBasis), 1)" ist nichts anderes als die Tabellenkunktion Vergleich.
lösche die Leerzeilen in Spalte A, dann liefert VERGLEICH mit Vergleichstyp 1 auch die richtige Zeilennummer.
Gruß
Christian
Anzeige
eine Variante mit Find...
26.02.2010 18:46:41
ChristianM
...könnte zB wie folgt aussehen.

Option Explicit
Sub TestIt()
Dim vntFnd, Datum As Date
Dim lngStart As Long, lngEnd As Long
Datum = Sheets("Tabelle1").Cells(3, 5).Value
lngStart = 26
lngEnd = 70
With Sheets("Tabelle1").Cells(lngStart, 2).Resize(lngEnd - lngStart + 1)
Set vntFnd = .Find(What:=Datum, LookIn:=xlValues, SearchDirection:=xlPrevious)
If Not vntFnd Is Nothing Then
MsgBox vntFnd.Row
End If
End With
End Sub
Gruß
Christian
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige