Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

VBA SUMIF mit Vergleichsoperatorenn

VBA SUMIF mit Vergleichsoperatorenn
29.01.2021 14:51:45
Andl
Liebe VBA ler,
ich habe folgenden Code für welchen ich gerne einen Vergleichsoperator setzen würde, habe aber etwas Probleme mit der richtigen Schreibweise.
Application.WorksheetFunction.SumIf(Tabelle14.Range("A4:A1048576"), LetztesBearbeitungsdatum, Tabelle14.Range("C4:C1048576"))
Application.WorksheetFunction.SumIf(Tabelle14.Range("A4:A1048576"), "größer als als Vergleichsoperator" LetztesBearbeitungsdatum, Tabelle14.Range("C4:C1048576"))
Ohne Vergleichsoparator bringt er mit den richtigen wert - mit ergibt 0 - obwohl ein Ergebnis raus kommen müsste...
Habe ich etwas am Code falsch?
Beste Grüße
Andl

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA SUMIF mit Vergleichsoperatorenn
29.01.2021 14:59:26
UweD
HAllo
so?

Application.WorksheetFunction.SumIf(Tabelle14.Range("A4:A1048576"), ">" & LetztesBearbeitungsdatum, Tabelle14.Range("C4:C1048576"))
LG UweD
AW: VBA SUMIF mit Vergleichsoperatorenn
29.01.2021 15:05:58
Daniel
Hi
Du muss genauso vorgehen wie in der Excelformel:
Wenn SummeWenn mit Vergleichsoperator verwendet werden soll, muss du als Parameter einen Textstring angeben, der mit dem Operator beginnt und auf den dann direkt im Textstring der Zahlenwert folgt.
Soll die Bedingung sein "größer 10", muss der Text so lauten: "&gt10"
Steht der Wert in ein einer Variablen, musst du verketten: "&GT" & Variable
Ein weiteres Problem könnte mit Datumswerten entstehen, wenn diese in Text gewandelt werden, weil dann nie gab sicher ist, ob bei der Umwandlung jetzt die Deutsche oder die amerikanische Schreibweise verwendet wird und ob das auch die Schreibweise ist, die dein SumIf benötigt um korrekt zu arbeiten.
Daher hier besser das Datum in den Ganzahlwert wandeln, also wenn LetztesBearbeitungsDatum als Date deklariert ist, nimm
"&GT" & CLng(LetztesBearbeitungsDatum)
Gruß Daniel
Anzeige
AW: VBA SUMIF mit Vergleichsoperatorenn
29.01.2021 18:09:20
Andl
Hallo Zusammen,
danke für die Hilfe - der Tipp wegen des Datums hat mir gefehlt. Funktioniert nun einwandfrei.
... = Application.WorksheetFunction.SumIf(Tabelle14.Range("A4:A1048576"), ">" & CLng(LetztesBearbeitungsdatum), Tabelle14.Range("C4:C1048576"))
Vielen Dank.
Beste Grüße
Andl
AW: VBA SUMIF mit Vergleichsoperatorenn
02.02.2021 11:36:18
Andl
Hallo Zusammen,
auf meine vorherige Frage aufbauend - wie Verhält es sich hier Summewenns bzw. SumIfs
Habe folgende Formel - allerdings bringt die mir nie den richtigen Wert bzw. gar nichts.
SumAbschlagNeu311 = Application.WorksheetFunction.SumIfs(Tabelle14.Range("C4:C1048576"), Tabelle14.Range("A4:A1048576"), ">" & CLng(LetztesBearbeitungsdatum), Tabelle14.Range("A4:A1048576"), "=
Ist diese Formel allein vom Aufbau her richtig bzw. wo kann hier ein Fehler unterlaufen?
Beste Grüße
Andl
Anzeige
AW: VBA SUMIF mit Vergleichsoperatorenn
02.02.2021 11:46:57
Daniel
Hi
Bei "größer gleich" und "kleiner gleich" darf das "=" nicht vorne stehen.
Sonst ist es nur "gleich" denn bei "=" am Anfang ist das nachfolgende Zeichen schon Teil des Wertes und nicht mehr Teil des Operators.
Gruß Daniel
AW: VBA SUMIF mit Vergleichsoperatorenn
02.02.2021 17:23:14
Andl
Hallo Daniel,
super, nun hats geklappt. Besten Dank.
Andl

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige