Variable in Formel (Excel / Visual Basic)

Hallo zusammen!

Nachdem es das letzte Mal so gut geklappt, probiere ich es jetzt nochmal:

Ich programmiere gerade ein Macro. In diesem ist es nötig mehrere Summen zu erstellen. Die Anzahl der Zeilen, die summiert werden sollen, können jedoch varieren. Jetzt hab ich die Zeilen zählen lassen und in einer Variable namens Projekt abgespeichert (im aktuellen Fall sind es 52).

Jetzt wollte ich sowas machen:
ActiveCell.FormulaR1C1 = „=SUM(R[Mprojekt]C:R[-1]C)“

Erläuterung: MProjekt = Projekt * (-1)

Gruß
Thorsten
P.S. Sorry programmiere das erste Mal ein Macro!

Jetzt wollte ich sowas machen:
ActiveCell.FormulaR1C1 = „=SUM(R[Mprojekt]C:R[-1]C)“
Erläuterung: MProjekt = Projekt * (-1)

Hi 10,
ActiveCell.FormulaR1C1 = „=SUM(R[“ & Projekt * -1 & „]C:R[-1]C)“

Ich persönlich mag diese RC Schreibweise nicht.
Ich nehme lieber absolute Bezüge mittels FormulaLocal
ActiveCell.FormulaLocal = „=SUMME(„A1:A“ & Projekt*-1“
oder
Spa=Activecell.Column
ActiveCell.FormulaLocal = „=SUMME(„A“ & Spa „:A“ & Projekt*-1“
Das kann ich viel schneller lesen und begreifen als RC
Gruß
Reinhard

Hallo Reinhard,

vielen Dank. Hab mir zwischenzeitlich anders geholfen. Ich baue da eine Matrix, in der ursprünglich rechts und unten Summen sein sollten. Jetzt stehen sie oben und links und summieren das komplette Datei (links - eins rechts bis zur letzten Spalte (IV), oben - eins darunter bis zur letzten Spalte (65.536))!

Dumm darf man sein, zu helfen muss man sich wissen!

Gruß
Thorsten

Hi 10,

vielen Dank. Hab mir zwischenzeitlich anders geholfen. Ich
baue da eine Matrix, in der ursprünglich rechts und unten
Summen sein sollten. Jetzt stehen sie oben und links und
summieren das komplette Datei (links - eins rechts bis zur
letzten Spalte (IV), oben - eins darunter bis zur letzten
Spalte (65.536))!

naja, wäre schon schicker nur die belegten Zellen auszuwerten. Wenn du dazu eingebaute Excel-funktionen nimmst merkst du den Unterschied nicht weil die angeblich bis zu 10000 mal schneller als Vba-Code sind.
Würdest du aber mittels Vba alle 65536 Zellen in z.B. Spalte A einzeln abfragen merkst du schon den Zeitverzug gegenüber Code der nur die belegten 5000 Zellen abklappert.

Schau mal bei http://www.excelformeln.de, ein Muss wenn man mit Matrix arbeitet.
Was da nicht steht, ist nicht mit Matrix-Formeln möglich. Sind echt fit dort.
Gruß
Reinhard

Dumm darf man sein, zu helfen muss man sich wissen!

Gruß
Thorsten