sumif mit variablem Zellbereich
26.10.2004 11:51:21
Ingo_H
ich hab ein Problem mit der sumif Funktion in meinem VBA-Code. Leider hab keine entsprechende Lösung gefunden.
Der Zweck der Formel, ich möchte alle mit "*" markeirten Zeilen meiner Liste die entsprechende Spalte z.B. 4 zusammenaddieren. Da meine Liste jedesmal unterscheidlich lang ist brauche ich eine Formel/Funktion mit Variablen. Die Funktion muß ich dann in eine bestimmte Zelle der Liste unten einfügen.
Die ganze Spalte als Bereich festzulegen funktioniert auch nicht, da es ja dann einen Fehler mit Zikelbezug gäbe.
Es existiert die Variable "ez" für erste Zeile und "lz" für letzte Zeile
Hier mein Beispiel, also, bisher steht in meine VBA-Code:
Range("F5").Select
ActiveCell.FormulaR1C1 ="=SUMIF(R[-4]C[-5]:R[-1]C[-5],R[-2]C[-5],R[-4]C:R[-1]C)"
(funktioniert soweit)
oder andere Schreibweise wäre:
Range("g5").Select
ActiveCell.FormulaR1C1 = "=SUMIF(R1C1:R4C1,""*"",R1C7:R4C7)"
(funktoniert auch)
Das Problem: der Zellberech muß ich irgendwie variabel darstellen können. Wie kann ich jetzt den Zellberech (z.B. R1C1:R4C1) mit Hilfe einer Variablen darstellen.
Oder kann ich die Darstellung mit:' Range(Cells(ez, 1), Cells(lz, 1))' verwenden.
Hmmm... hoffentlich hab ich mein Problem gut erklärt und mir kann jemand weiterhelfen.
Danke schön.
Ingo_H