Cell.Formula = sum(J30:"J"+xx) ??

Programmierung unter AOO/LO (StarBasic, Python, Java, ...)

Moderator: Moderatoren

michab
Beiträge: 4
Registriert: Fr, 20.05.2005 19:53
Wohnort: Bonn
Kontaktdaten:

Cell.Formula = sum(J30:"J"+xx) ??

Beitrag von michab »

Guten Tag zusammen.

Ich habe derzeit leider keine Idee wie ich die nachfolgende Summenberechnung durchführen kann.

xx = cell.value+1
....
Cell.Formula = sum(J30:"J"+xx)

Also "J"+xx gibt für sich den Wert J35 wieder (aktuelle Tabellenposition )
Jetzt möchte ich die Summe von J30-J34 berechnen lassen.
Dabei bekomme ich einen Fehler. #Name
Ist mir auch klar das es so nicht gehen kann.
Aber wie muss ich "J"+xx umwandeln damit es funktioniert ?

Für einen Tip wäre ich dankbar

Grüße Micha
Toxitom
********
Beiträge: 3769
Registriert: Di, 12.08.2003 18:07
Wohnort: Wiesbaden
Kontaktdaten:

Beitrag von Toxitom »

Hey Micha,


Code: Alles auswählen

Cell.Formula = "sum(J30:J" & xx & ")" 
wobei "xx" jetzt deine Variable ist, die die letzte Zeilenzahl enthält - entweder direkt als Text oder als Integer/Long. Das wird dann in Text automatisch umgewandelt.

Viele Grüße
Thomas
Unterstützer LibreOffice, zertifizierter Trainer und Berater
Bücher: LibreOffice 6- Einstieg und Umstieg
Makros Grundlagen - LibreOffice / OpenOffice Basic
michab
Beiträge: 4
Registriert: Fr, 20.05.2005 19:53
Wohnort: Bonn
Kontaktdaten:

Beitrag von michab »

Hallo Thomas

Vielen Dank für Deine Antwort.
Wenn ich Deine Formel so eintrage steht sie genau so im Ergebnisfeld.
D.h. die Rechenoperation wird nicht durchgeführt, die Formel wird angezeigt.

In der Rechenleiste steht z.B. sum(J30:J34), da fehlt das Gleichzeichen.

Wenn ich das in der weise Cell.Formula = "=sum(J30:J" & xx & ")" hinzufüge bekomme ich den Fehler 'Rechenverfahren konvergiert nicht'.

Die Lösung scheint nah dran zu sein, aber noch nicht ganz.

Fällt Dir da was zu ein ?

Gruß Micha
michab
Beiträge: 4
Registriert: Fr, 20.05.2005 19:53
Wohnort: Bonn
Kontaktdaten:

Beitrag von michab »

Stopp

Vielen Dank, ich hatte noch einen kleinen Denkfehler.
Ich musste zur Summenbildung die aktuelle Zeile um Minus 1 verkleinern.

Also : Cell.Formula = "= sum(J30:J" & xx-1 & ")/100*R23"

Scheint Prima zu funktionieren,

vielen Dank

Gruß Micha
Antworten