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

Ich finde es einfach nicht :(

Forumthread: Ich finde es einfach nicht :(

Ich finde es einfach nicht :(
29.01.2018 11:35:18
Burak
Moin,
ich suche und suche den Fehler aber finde ihn nicht in folgendem Code:

Summe = 0
For n = 3 To .Cells(Rows.Count, 5).End(xlUp).Row
If (.Cells(n, 14).Value > 0.9166666 And .Cells(n, 1).Value  .Cells(n - 1, 1).Value And . _
Cells(n, 13).Value >= startdatum And .Cells(n, 13).Value  .Cells(n - 1, 1).Value And .Cells(n, 13).Value > startdatum And .Cells(n, 13).Value 
Er soll ne Liste abarbeiten und den Wert aus Spalte 5 summieren wenn:
- in Spalte 14 der Wert über 0,91666 (21:59 Uhr) liegt UND
- in Spalte 1 sich der Wert zur Zeile darüber verändert hat UND
- in Zeile 13 das Datum zwischen dem eingebenen startdatum und dem eingegebenen enddatum liegt (inklusive)
ODER
- in Spalte 14 der Wert unter 0,25 (06:00 Uhr) liegt UND
- in Spalte 1 sich der Wert zur Zeile darüber verändert hat UND
- in Zeile 13 das Datum zwischen dem eingebenen startdatum und dem eingegebenen enddatum + 1 liegt (inklusive)
also in meinem Fall gebe ich startdatum 18.01.2018 und enddatum 18.01.2018 ein, aber er nimmt zB auch einen Wert vom 20.01.2018 etwa 01:00 Uhr morgens.
Bei diesem datum möchte ich aber nur dass er von 18.01.2018 22:00Uhr bis 19.01.2018 05:59:59 überprüft
Denke das Problem liegt iwo an den ganzen AND und dem Or
Vllt ist das auch ohne Beispieldatei verständlich, sonst Bescheid geben.
Freundliche Grüße und Vielen Dank im Voraus!!!
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ich finde es einfach nicht :(
29.01.2018 11:52:15
Nepumuk
Hallo Burak,
als welcher Datentyp sind denn die Variablen startdatum und enddatum deklariert?
Gruß
Nepumuk
AW: Ich finde es einfach nicht :(
29.01.2018 11:58:28
Burak
ja du hast recht, hab startdatum als Date deklariert aber enddatum als String.
Mich wundert es dass er dann bei enddatum + 1 nicht ein fehler ausgibt, aber daran lag es auf jeden fall.
enddatum als Date formatiert und jetzt geht es.
Danke, bist der beste!!!
Anzeige
mich wundert es ...
29.01.2018 13:40:33
Rudi
Hallo,
das liegt an der internen Umwandlung.
"29.1.2018"+1 ergibt 2912019.
Gruß
Rudi
AW: Ich finde es einfach nicht :(
29.01.2018 11:59:39
Rudi
Hallo,
ich würde das eher so schreiben:
For n = 3 To .Cells(Rows.Count, 5).End(xlUp).Row
Select Case .Cells(n, 14)
Case Is > TimeValue("21:59"), Is  .Cells(n - 1, 1) Then
Select Case .Cells(n, 13)
Case startDatum To EndDatum: Summe = Summe + .Cells(n, 5)
End Select
End If
End Select
Next n

Gruß
Rudi
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige