Microsoft Excel

Herbers Excel/VBA-Archiv

FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht

Betrifft: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Udo Kowalleck
Geschrieben am: 14.08.2014 17:12:45

Hallo Exelexperten,
hier meine nächstes Anfängerproblem:
If spalte = 20 Then Cells(zeile, spalte).FormulaR1C1Local = "=Summe(Z(-Anzahl)S(-4):ZS(-4))" geht so nicht. Eine Variable als Zellbezug funkt hier nicht.
Es handelt sich um eine Schleife.
Hier die ganze Schleife:
For spalte = 20 To 22
zeile = 4 + (Anzahl / 2)
zaehler = 1
For zaehler = 1 To Anzahl * 2 - 2
Cells(zeile, spalte).Select
If spalte = 20 Then Cells(zeile, spalte).FormulaR1C1Local = "=Summe(Z(-Anzahl)S(-4):ZS(-4))"
If spalte = 21 Then Cells(zeile, spalte).FormulaR1C1Local = "=Summe(Z(-Anzahl)S(-4):ZS(-4))"
If spalte = 22 Then Cells(zeile, spalte).FormulaR1C1Local = "=Summe(Z(-Anzahl)S(-4):ZS(-4))"
zeile = zeile + Anzahl / 2
Next zaehler
Next spalte

Gibt es dafür eine Lösung.
mit freundlichen und so

  

Betrifft: AW: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Hajo_Zi
Geschrieben am: 14.08.2014 17:25:01

ich hätte vermutet Z möchte keinen Text sondern eine Zahl
Anzahl*-1

GrußformelHomepage


  

Betrifft: AW: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Udo Kowalleck
Geschrieben am: 14.08.2014 17:34:35

Hallo Hajo,
na klar. Anzahl ist zwar ein Text, in diesen Falle steht Anzahl aber für eine Variable. Anzahl steht für 4 bis 24.
Das es so nicht geht weiß ich, aber es gibt bestimmt eine Lösung.
Gruß udo


  

Betrifft: AW: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Hajo_Zi
Geschrieben am: 14.08.2014 17:45:15

Hallo Udo,

meine Lösung gefiel Dir also nicht, ich bin dann raus.

Gruß Hajo


  

Betrifft: AW: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Daniel
Geschrieben am: 14.08.2014 17:31:39

Hi

die Formel ist zunächst mal ein einfacher Textstring.
Wenn du den Textstring aus fixen Textbestandteilen und Variablen zusammensetzen willst, dann geht das so:

"Fixer Text Teil 1" & Variable & "Fixer Text Teil 2"
Variablen dürfen nie innerhalb von Anführungszeichen verwendet werden, sonst werden sie nicht als Variable erkannt.
Beachte die Leerzeichen vor und nach dem Verkettungszeichen &, die sind notwendig und du musst sie eingeben.

also bei dir dann:
.FormulaR1C1Local = "=Summe(Z(-" & Anzahl & ")S(-4):ZS(-4))"
Gruß Daniel


  

Betrifft: AW: FormulaR1C1Local = "=Summe(Z(-Anzahl) geht nicht von: Udo Kowalleck
Geschrieben am: 14.08.2014 17:46:29

Hallo Daniel,
wie immer die richtige Lösung.
Zitat: Variablen dürfen nie innerhalb von Anführungszeichen verwendet werden
Wieder was dazu gelernt. Nicht nur die Lösung des Problems, sondern auch Erklärungen warum. Toll.
Vielen Dank
Gruß Udo