Office - Word, Excel und Co. 9.703 Themen, 40.813 Beiträge

VBA in Excel

App / 3 Antworten / Flachansicht Nickles

Hallo,

vielleicht wäre dieser Thread auch unter "Programmieren" gut aufgehoben. Ich habe ein Excel mit einem Rechenalgorithmus. Durch diesen sollen verschiedene Zahlen durchgejagt werden und auch in verschiedene Zellen ausgegeben werden. Ganz einfaches Beispiel: ich bekomme jeden Monat Taschengeld (variabel) und immer fix 5 Euro von Omma dazu. Ich trage für jeden Monat mein erhaltenes Taschengeld ein und Excel addiert zu jedem Monat die 5 Euro hinzu (führt also eine Rechenoperation aus) und gibt dann wieder eine Monatsreihe mit den berechneten Zahlen aus. Im angegebenen Beispiel wäre die Lösung leicht, einfach immer +5. Das Problem das ich zu lösen habe ist deutlich komplexer.

Ich muss ein und dieselbe Berechnung auf mehrere Zellen anwenden und das Ergebnis in verschiedene Zellen ausgeben. In VB sieht eine einfache Beispielberechnung wie folgt aus:

ActiveCell.FormulaR1C1 = "=R[-15]C*R[-7]C"

In Exceldeutsch heisst das: B17 = B2 * B10

Im nächsten Schritt soll es lauten: B18 = B3 * B10

Will daher eine Schleife programmieren. Bei mir siehts so aus und führt zu keinem Ergebnis:

Dim counter As Integer
Dim i As Integer
For i = 0 To 3
counter = 0

ActiveCell.FormulaR1C1 = "=R[-15+counter]C*R[-7+counter]C"
Range("B18").Select

counter = counter + 1

Next i


Wobei jetzt noch ein Counter fürs Ergebnisfeld fehlt. Also wenn hier ein Programmierprofi ist, wäre es super, wenn es dafür ne Lösung gäbe.

Danke und Gruß
Marc

bei Antwort benachrichtigen
Disk App „VBA in Excel“
Optionen

Hi

Du must in Excel mit den Zellen anderst arbeiten.

Der Anfang war schon nicht schlecht, aber danach happert es einwenig.

Angenommen in den Zellen B18 sollte das Ergebnis von B2*B10 stehen. In B19 sollte B3*B10....

For x=0 to 3
Range("B" & x+18).Value = Range("B" & x+2).Value * Range("B10")
next x

bei Antwort benachrichtigen