Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
656to660
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
656to660
656to660
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Funktion in Formel integrieren

Funktion in Formel integrieren
26.08.2005 10:40:45
Stefan
Hallo zusammen,
folgende Funktion gibt mir die letzte benutzte Zeile in einer Tabelle zurück:

Function lngLastUsedRow() As Long
Dim i As Integer
Dim lngMin As Long
Dim lngMax As Long
For i = 1 To 256
lngMin = Cells(65536, i).End(xlUp).Row
If lngMax < lngMin Then
lngMax = lngMin
End If
Next i
lngLastUsedRow = lngMax
End Function

Dies funktioniert auch.
Nun möchte ich die Zelle nach der letzten Zeile per VBA eine Formel bzw. gleich deren Ergebnis einfügen, die mir den Mittelwert aller Zellen in dieser Spalte, die größer als Null sind, einfügen.
Mein Versuch sieht so aus und versagt leider:
Cells(lngLastUsedRow + 1, 46).Select
Selection.FormulaArray = "=AVERAGE(IF(R2C46: & lngLastUsedRow, 46>0,R2C46: & lngLastUsedRow, 46))"
Ich haber schon vieles probiert, komme aber leider nicht selbst auf die Lösung. Kann mir jemand helfen?
Vielen Dank vorab!
Grüße, Stefan

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Funktion in Formel integrieren
26.08.2005 11:15:58
u_
Hallo,
Cells(lngLastUsedRow() + 1, 46).Select
Selection.FormulaArray = "=AVERAGE(IF(R2C46:R" & lngLastUsedRow() & "C46&gt0,R2C46:R" & lngLastUsedRow & "C46))"
Gruß
Geist ist geil!
AW: Funktion in Formel integrieren
26.08.2005 11:20:27
Heiko
Hallo Stefan,
habe deine Formel zwar nicht ganz geblickt, aber wie man die LetzteZeile da rein kriegt zeigt, glaube ich, auch meine abgespeckte Version.

Private Function lngLastUsedRow() As Long
lngLastUsedRow = ActiveSheet.UsedRange.Rows.Count
End Function

Sub Formel()
Cells(lngLastUsedRow + 1, 5).FormulaArray = "=AVERAGE(E1:E" & lngLastUsedRow & ", 46)"
End Sub
Gruß Heiko

PS: Rückmeldung wäre nett !
Anzeige
AW: Funktion in Formel integrieren
26.08.2005 11:35:46
Stefan
Hallo Ihr Beiden,
besten Dank für die sehr schnelle Hilfe!
@Heiko: Ich habe mich aus Zeitgründen erst einmal für die Lösung von u_ entschieden, dies funktionierte sofort. Ich werde Deine Lösung heute Abend mal ausprobieren und gebe Dir dann Feedback.
Vielen Dank nochmals.
Grüße, Stefan

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige