Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
504to508
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
504to508
504to508
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

sumif mit variablem Zellbereich

sumif mit variablem Zellbereich
26.10.2004 11:51:21
Ingo_H
Hallo Jungs und Mädels,
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

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

Betreff
Datum
Anwender
Anzeige
AW: sumif mit variablem Zellbereich
Jürg
Hallo Ingo
Habe nicht zu 100% verstanden was du machen willst ;-)
Brauchst du denn in der Zelle die Formel oder reicht es, wenn du nur das Resultat siehst?
Du könntest z.B. alle Einträge der Spalte C durchlaufen und zählen in wie vielen Zellen ein "*" steht. Das würde in etwa so aussehen:
dim anzahlSterne as integer
anzahlSterne = 0
dim x as integer
for x = ez to lz
if cells(x,3).value ="*" then
anzahlSterne = anzahlSterne +1
end if
next x
cells(5,6).value = anzahlSterne 'Anzahl Sterne in Spalte C wird in Feld F5 geschrieben
Gruss
Jürg
AW: sumif mit variablem Zellbereich
26.10.2004 13:51:41
Ingo_H
Hi Jürg,
danke für deine Antwort, aber das ist es nicht ganz. Ich brauche nicht das Ergebnis, sondern die Formel.
Also ich öffne, mit meinem Makro, mehrere Exceldateien, schaue nach wo sich die letzte zeile mit den Endsummen befindet, und möchte dort die Funktion einfügen, die aus allen mit "*" markierten Zeilen eine Summe zieht. So daß beim späteren Bearbeiten der Datei, und abändern der oberen Werte sich die Endsumme entsprechend mit ändern.
Hmmmm... ist ein einfacher Sachverhalt, aber irgendwie schwer zu beschreiben?
So sieht meine Datei aus, in Zeile 7 muß meine Formel rein:

1-Ortsname : Fürth, Stadt
2-* 54 Fürth, Stadt 5 2 0 0
3- 0,00% 3,70% 0,00% 0,00%
4-Ortsname : Nürnberg, Stadt
5-* 356 Nürnberg, Stadt 2 2 0 1
6- 0,00% 0,56% 0,00% 0,28%
7-** 410 7 4 0 1
Ich weis, sieht schrecklich aus, aber der Dateiupload klappt nicht:-(
Alles kapiert?
Wenn noch Fragen sich helf ich natürlich weiter.
Ciao Ingo :-\
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige