Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Formel in Zelle per VBA einfügen

Forumthread: Formel in Zelle per VBA einfügen

Formel in Zelle per VBA einfügen
10.09.2008 14:17:46
Werner
Wie kann ich Statistikformeln (Mittelwert, Maximum, Minimum, Standardabweichung) per VBA in eine Zelle einfügen?
Der zu berechnende Bereich geht von "$J$1" bis "$J$n" wobei n mit ActiveCell.Row-2 zuvor berechnet wird.
Gruß Werner.
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel in Zelle per VBA einfügen
10.09.2008 14:21:00
Tobias
Hallo Werner!
activecell.row-2 kannst Du Dir sparen.
Sub FormelInAktiveZelleEinfügen()
    'R1C1 = Zelle A1
    'R[-2]C[-1] = eine Spalte nach links, zwei Zeilen nach oben
    ActiveCell.FormulaR1C1 = "=MIN(R1C1:R[-2]C[-1])"
End Sub
Gruß, Tobi
http://vba-blog.de/
AW: Formel in Zelle per VBA einfügen
Werner

Hallo Tobi,
danke für den Tipp. Ich habe noch etwas herumprobiert es geht auch so:

strLetzteZeile = ActiveCell.Row - 2
strRange = "$J$1:$J$" & strLetzteZeile
ActiveCell.Offset(0, 0).FormulaLocal = "=Mittelwert(" & strRange & ")"
ActiveCell.Offset(0, 0).NumberFormat = "h:mm:ss;@"


Gruß Werner.

AW: Formel in Zelle per VBA einfügen
Erich

Hallo Werner,
wozu soll "Offset(0, 0)" gut sein? Da könntest du auch noch ActiveCell.Offset(0, 0).Resize(1, 1).... schreiben.
Kürzer wäre

strRange = "$J$1:$J$" & ActiveCell.Row - 2
With ActiveCell
.FormulaLocal = "=Mittelwert(" & strRange & ")"
.NumberFormat = "h:mm:ss;@"
End With
' oder noch kürzer:
With ActiveCell
.FormulaLocal = "=MITTELWERT($J$1:$J$" & ActiveCell.Row - 2 & ")"
.NumberFormat = "h:mm:ss;@"
End With

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

AW: Formel in Zelle per VBA einfügen
Werner

Hallo Erich,
vielen Dank für Deinen Tipp, ich werden mein Makro dahingehend ändern.
Gruß Werner.
Anzeige
AW: Formel in Zelle per VBA einfügen
10.09.2008 15:52:02
Werner
Hallo Tobi,
danke für den Tipp. Ich habe noch etwas herumprobiert es geht auch so:

strLetzteZeile = ActiveCell.Row - 2
strRange = "$J$1:$J$" & strLetzteZeile
ActiveCell.Offset(0, 0).FormulaLocal = "=Mittelwert(" & strRange & ")"
ActiveCell.Offset(0, 0).NumberFormat = "h:mm:ss;@"


Gruß Werner.

Anzeige
AW: Formel in Zelle per VBA einfügen
13.09.2008 07:21:34
Erich
Hallo Werner,
wozu soll "Offset(0, 0)" gut sein? Da könntest du auch noch ActiveCell.Offset(0, 0).Resize(1, 1).... schreiben.
Kürzer wäre

strRange = "$J$1:$J$" & ActiveCell.Row - 2
With ActiveCell
.FormulaLocal = "=Mittelwert(" & strRange & ")"
.NumberFormat = "h:mm:ss;@"
End With
' oder noch kürzer:
With ActiveCell
.FormulaLocal = "=MITTELWERT($J$1:$J$" & ActiveCell.Row - 2 & ")"
.NumberFormat = "h:mm:ss;@"
End With

Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

Anzeige
AW: Formel in Zelle per VBA einfügen
15.09.2008 07:20:10
Werner
Hallo Erich,
vielen Dank für Deinen Tipp, ich werden mein Makro dahingehend ändern.
Gruß Werner.

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige