Registriert seit: 29.12.2019
Version(en): 2019
19.07.2023, 11:36
(Dieser Beitrag wurde zuletzt bearbeitet: 19.07.2023, 11:38 von Tommiks .
Bearbeitungsgrund: Korrektur d. Formel
)
Hallo zusammen, ableitend aus der folgenden Formel habe ich die unteren Codes geschrieben Z4 =SUMMENPRODUKT(($E$7:$E$17=$X4)*1;($C$7:$C$17);($E$7:$E$17<>"a")*1)+SUMMENPRODUKT(($N$7:$N$17=$X4)*1;($L$7:$L$17);($N$7:$N$17<>"a")*1) Die Codes funktionieren im Alleingang , aber ich muss zwei Bereiche betrachten. Ich habe wie die obere Formel Plus-Zeichen versucht, keine Chance. Mit UND- Zeichen geht es auch nicht. Ich schaffe es nicht aus zwei VBA Codes ein ganzer Code zu machen. ActiveSheet.Range("Z4").Value = Evaluate("sumproduct((E7:E17=X4)*1*(L7:L17<>""a""),(L7:L17))") ActiveSheet.Range("Z4").Value = Evaluate("sumproduct((N7:N17=X4)*1*(L7:L17<>""a""),(L7:L17))") Das habe ich schon versucht, aber ohne Erfolg : ActiveSheet.Range("Z5").Value = Evaluate("sumproduct((E7:E17 & N7:N17=X5)*1*(C7:C17& L7:L17<>""a""),(C7:C17 & L7:L17))") Bedanke mich im Voraus für die Unterstützung.
Registriert seit: 17.04.2014
Version(en): MS Office 365(32)
Hallo,ActiveSheet.Range("Z5").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=$X4)*1*($C$7:$C$17),($E$7:$E$17<>""a"")*1)+SUMPRODUCT(($N$7:$N$17=$X4)*1*($L$7:$L$17),($N$7:$N$17<>""a"")*1)") Gruß, Uwe
Registriert seit: 29.09.2015
Version(en): 2030,5
19.07.2023, 12:24
(Dieser Beitrag wurde zuletzt bearbeitet: 19.07.2023, 12:24 von snb .)
Bitte, Beispieldatei.
Code:
Sub M_snb() MsgBox [SumProduct(--(E7:E17&N7:N17=X4&X4)*isnumber(L7:L17),L7:L17)] End Sub
Registriert seit: 29.12.2019
Version(en): 2019
Es tut mir leid
, ich habe so oft verschiedene Varianten getestet, dass ich die ursprünglichen Codes falsch übernommen habe.
Das sind die Codes:
ActiveSheet.Range("Z6").Value = Evaluate("sumproduct((E7:E17=X6)*1*(C7:C17<>""a""),(C7:C17))")
ActiveSheet.Range("Z6").Value = Evaluate("sumproduct((N7:N17=X6)*1*(L7:L17<>""a""),(L7:L17))")
Registriert seit: 29.12.2019
Version(en): 2019
@snb, hier ist die Beispieldatei.
Angehängte Dateien
Beispieldatei.xlsx (Größe: 16,76 KB / Downloads: 6)
Registriert seit: 13.04.2014
Version(en): 365
Hi,
da die Bereiche verschoben sind, würde ich das empfehlen:
Code:
ActiveSheet.Range("Z6").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=$X4)*($C$7:$C$17)*($E$7:$E$17<>""a"")+($N$8:$N$18=$X4)*($L$8:$L$18)*($N$8:$N$18<>""a""))")
Gruß Edgar Meine Antworten sind freiwillig und ohne Gewähr! Über Rückmeldungen würde ich mich freuen.
Registriert seit: 29.12.2019
Version(en): 2019
@BoskoBiati, der Code funktioniert. Vielen Dank..
Registriert seit: 29.12.2019
Version(en): 2019
Code:
ActiveSheet.Range("Z6").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=$X4)*($C$7:$C$17)*($E$7:$E$17<>""a"")+($N$8:$N$18=$X4)*($L$8:$L$18)*($N$8:$N$18<>""a""))")
Der Code funktioniert tadellos.
Ich möchte die zwei $X4-Stellen mit der Zahl 328 ersetzen. Ich habe dafür an die Stellen ""328"" geschrieben. Aber ich erhalte ein falsches Ergebnis.
Code:
ActiveSheet.Range("Z6").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=""328"")*($C$7:$C$17)*($E$7:$E$17<>""a"")+($N$8:$N$18=""328"")*($L$8:$L$18)*($N$8:$N$18<>""a""))")
Wie muss ich an der Stelle den Code ergänzen, dass der Code nach der Zahl 328 sucht? Danke.
00202
Nicht registrierter Gast
Moin,
schreibe die
328 OHNE alle Anführungszeichen.
Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag: 1 Nutzer sagt Danke an Gast für diesen Beitrag 28
• Tommiks
Registriert seit: 29.12.2019
Version(en): 2019
21.07.2023, 07:51
(Dieser Beitrag wurde zuletzt bearbeitet: 21.07.2023, 08:05 von Tommiks .
Bearbeitungsgrund: Korrektur d. Formel
)
Code:
ActiveSheet.Range("Y4").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=328*($C$7:$C$17)*($E$7:$E$17<>""a"")+($N$7:$N$17=328*($L$7:$L$17)*($N$7:$N$17<>""a""))")
Der obere Code hat nicht gefruchtet.
Aber der Code war richtig, danke...
Code:
ActiveSheet.Range("Y4").Value = Evaluate("SUMPRODUCT(($E$7:$E$17=328)*($C$7:$C$17)*($E$7:$E$17<>""a"")+($N$7:$N$17=328)*($L$7:$L$17)*($N$7:$N$17<>""a""))")