650 Aufrufe
in Tabellenkalkulation von ahorn38 Experte (3.3k Punkte)
Hallo,

ich habe in einer Zelle eine Matrixformel

=SUMME(INDIREKT("$G$11:$G"&VERGLEICH("";$E:$E;-1)))/ANZAHL(INDIREKT("$F$1:$F"&VERGLEICH("";$E:$E;-1)))

die ich mit einem Abstand von 5 Spalten in die jeweils nachfolgenden Spalten mittels einem Code kopieren möchte. Allerdings klappt das nicht ohne weiteres, da die Berechnungsspalte "$G" ja fix ist aber fortgeschrieben werden muss. Wenn ich das "$" entferne, gibt es einen Fehler. Der Spaltenbezug $F kann dagegen erhalten bleiben. Hat jemand einen Tipp?

Danke und Gruß A.

3 Antworten

+1 Punkt
von m-o Profi (22.9k Punkte)

Hallo Andreas,

anstatt die Formel mit VBA zu kopieren, könntest du die Formel auch gleich per VBA angepasst einfügen.

Wenn ich dich richtig verstehe steht die Formel, die du gepostet hast in Spalte H.

Versuche mal den folgenden Code:

Sub Formel()

Dim lngSpalte As Long
Dim strSpalte As String

For lngSpalte = 8 To 38 Step 5

 'Buchstabe für Spalte ermitteln
 strSpalte = Mid(Columns(lngSpalte - 1).Address, 2, InStr(1, Columns(lngSpalte - 1).Address, ":") - 2)
 'Formel einfügen
 Cells(3, lngSpalte).FormulaLocal = "=SUMME(INDIREKT(""" & strSpalte & "11:" & strSpalte & """ &VERGLEICH("""";E:E;-1)))/ANZAHL(INDIREKT(""F1:F""&VERGLEICH("""";E:E;-1)))"

Next lngSpalte

End Sub


Die Einfügezeile musst du natürlich noch anpassen, ebenso wie die letzte Einfügespalte.

Gruß

M.O.

+1 Punkt
von beverly_ Experte (3.7k Punkte)

Hi,

mal nur als Tipp: den Spaltenbuchstaben kann man einfacher ermitteln:

strSpalte = Application.Substitute(Cells(1, lngSpalte - 1).Address(False, False), 1, "")

Bis später, Karin

0 Punkte
von ahorn38 Experte (3.3k Punkte)
Hallo M.O. und Karin,

ihr habt mir wieder toll geholfen, funzt wunderbar, vielen Dank für eure guten Tipps!!!!

VG A.

Deine Antwort

Dein angezeigter Name (optional):
Datenschutz: Deine Email-Adresse benutzen wir ausschließlich, um dir Benachrichtigungen zu schicken. Es gilt unsere Datenschutzerklärung.
Anti-Spam-Captcha:
Bitte logge dich ein oder melde dich neu an, um das Anti-Spam-Captcha zu vermeiden.
...