Anzeige
Archiv - Navigation
1540to1544
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

Addition mit VBA und relativer Zeilenzahl

Addition mit VBA und relativer Zeilenzahl
11.02.2017 00:42:10
reiner
hallo Leute,
die Formel lautet:
ActiveCell.FormulaR1C1 = "=SUM(R[-36]C:R[-3]C)"

nun soll diese Formel aber auch richtige Werte liefern wenn sich die Anzahl der zu addierenden Zeilen verändert. Das heißt: der Zahlenwert 36 soll durch die Variable letztezeile ersetzt werden.
Ich erhalte die Fehlermeldung: Laufzeitfehler 1004
wo liegt mein Gedankenfehler?
mfG
reiner

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Wahrscheinlich daran, ...
11.02.2017 02:38:44
Luc:-?
…Reiner,
dass du die Variable falsch in die Fml eingesetzt hast oder den Variablenwert falsch bildest. Beachte auch, dass du eine R1C1-Fml (dt Z1S1) bildest, deren SUM-Argument Folgendes bedeutet:
R[-36]→Z(-36)→36 Zeilen vor der Zeile der FmlZelle, C=C[0]→S=S(0)→Spalte der FmlZelle, bis R[-3]→Z(-3)→3 Zeilen vor der Zeile der FmlZelle, C=C[0]→S=S(0)→Spalte der FmlZelle
Vermutlich gibt letztezeile eine ZeilenNr wieder und dürfte dann gleich aus 3 Gründen nicht passen:
1. Diese Angabe wäre absolut, was die R1C1-Schreibung …R" & letztezeile & "C… erfordern würde.
2. Es ist ja wohl unsinnig, den Start-Zellwert nach den End-Zellwert zu setzen. Xl korrigiert so etwas zwar automatisch und tauscht die beiden Adressen ggeinander aus - zumindest bei einer A1-Adress­Anzeige (bei normaler Xl-Einstellung) -, aber das dürfte ja wohl auch nicht in deinem Sinne sein (vgl 3.!).
3. Die ins Blatt eingetragene Fml würde, dank letztezeile, auf gleichem Blatt wie die zu summierenden Daten die SummenZelle mit erfassen, was zu einem Zirkelschluss-Fehler führen würde, wenn du nicht Iteration angehakt hast. Hast du das aber getan, würdest du diesen Fehler im Blatt nicht mal bemerken!
Mehr kann ich zu deinen Angaben nicht schreiben; Andere hätten wohl eher weniger oder gar nichts geschrieben, sondern weitere Details eingefordert…
Morrn, Luc :-?
Besser informiert mit …
Anzeige
AW: Addition mit VBA und relativer Zeilenzahl
11.02.2017 03:30:28
littletramp
Hallo Reiner
Ohne viele Worte:-?
Sub Demo()
Dim lngRowR1C1 As Long
lngRowR1C1 = -ActiveCell.Row + 1  ' beachte Minus vor ActiveCell
ActiveCell.FormulaR1C1 = "=SUM(R[-3]C:R[" & lngRowR1C1 & "]C)"
End Sub

Gruss Markus
ohne viele Worte, aber kindisch....
11.02.2017 09:37:00
robert
owT
...Was mal wieder zeigt, ...
11.02.2017 14:22:31
Luc:-?
…robert,
dass manchem (wortkargem) „SoftwareIngenieur“ die Erklärung dessen, was er tut oder Andere falsch gemacht haben könnten, nicht wichtig ist, sondern es ihm nur aufs Selbermachen ankommt, denn dafür lässt er sich in seinem Geschäft normaler­weise sehr gut bezahlen, so dass er sich dann auch mal 'ne jahre­lange Weltreise leisten kann… :->
Das wäre dann auch der Unterschied zu einem Office-Berater, dem gelehrt wurde, wie man den Leuten am besten hilft.
Gruß, Luc :-?
Anzeige
AW: Addition mit VBA und relativer Zeilenzahl
11.02.2017 05:32:04
Gerd
Moin,
Wasser hat keine Balken, aber eine Liste wie eine Wurst i.d.R. zwei Enden. :-)
ActiveCell.FormulaR1C1 = "=SUM(R2C:R[-3]C)"
Gruß Gerd
AW: Addition mit VBA und relativer Zeilenzahl
11.02.2017 12:53:49
Herbert
Hallo Gerd,
warum benutzt Du nicht
ActiveCell.FormulaLocal = "=SUMME(A:A)"
?
Servus
vielen Dank für eure Rückmeldungen
11.02.2017 13:25:31
reiner
die von mir gelieferte Formel habe ich mir nicht ausgedacht. Ich habe diese als Excel-Formel eingegeben und gleichzeitig mit dem Makro-Recorder aufgezeichnet.
Dank eurer Beiträge konnte ich die vorhandene Formel abwandeln sodass die genannter Variable nun auch zu einem korrekten Ergebnis führt wenn sich der zu addierende Bereiche verändert
mfG
reiner
Anzeige
AW: @Herbert
11.02.2017 15:36:35
Gerd
Hallo Herbert,
ich bin anhand der vom Fragesteller gezeigten Formel davon ausgegangen, dass
in dein Beipiel übertragen, die Formelzelle in der Spalte A ist.
Gruß Gerd
Ich auch, zumindest aber in der gleichen! owT
11.02.2017 19:01:54
Luc:-?
:-?

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige