Live-Forum - Die aktuellen Beiträge
Datum
Titel
17.10.2025 10:28:49
16.10.2025 17:40:39
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Mittelwert bei Userform wenn ein Feld leer ist

Mittelwert bei Userform wenn ein Feld leer ist
15.11.2017 13:27:00
Fexcel
Hallo liebe Excelprofis,
ich bin zum ersten mal hier und hoffe es kann mir jemand helfen. Bin in VBA noch eher Einsteiger, da ich mir die Codes noch viel von Foren zusammen kopiere.
Ich habe eine Userform (frm_Qualitaetsdaten) in der ich Werte in den Feldern txtx1-txtx5 eingebe. jetzt möchte ich, dass mir der Mittelwert berechnet wird und wenn in einer Zelle nichts drinsteht soll der Wert ignoriert werden. Also eigentlich wie bei der Formel =Mittelwert()
Habe folgenden Code

Private Sub cmdübernehmen_Click()
'fügt die eingetragenen Werte ins Tabellenblatt und schließt das Formular
Dim intErsteLeereZeile As Long
Dim Spitzenwert1 As Double
intErsteLeereZeile = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 1
Spitzenwert1 = Application.Average(txtx1, txtx2, txtx3, txtx4, txtx5)
' so übernehme ich die Werte
ActiveSheet.Cells(intErsteLeereZeile, 10).Value = Me.txtx1.Value
ActiveSheet.Cells(intErsteLeereZeile, 11).Value = Me.txtx2.Value
ActiveSheet.Cells(intErsteLeereZeile, 12).Value = Me.txtx3.Value
ActiveSheet.Cells(intErsteLeereZeile, 13).Value = Me.txtx4.Value
ActiveSheet.Cells(intErsteLeereZeile, 14).Value = Me.txtx5.Value
End Sub

Wie kann ich hier den Mittelwert bilden ohne dass es mir eine Fehlermeldung ausgibt, wenn ein Feld nicht beschrieben ist? Außerdem nimmt er mit keine Kommazahlen, woran kann das liegen?
Code nicht vollständig, den Rest kann ich dann umschreiben.
Vielen Dank für Eure Hilfe!
Schönen Gruß
Fexcel
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mittelwert bei Userform wenn ein Feld leer ist
15.11.2017 18:32:59
ChrisL
Hi
Gibt vielleicht noch elegantere Lösungen, aber hier mal was...
Dim i As Integer
Dim iCounter As Integer, cSumme As Currency
For i = 1 To 5
If Controls("txtx" & i)  "" Then
cSumme = cSumme + Controls("txtx" & i).Value
iCounter = iCounter + 1
Next i
If iCounter > 0 Then MsgBox cSumme / iCounter
cu
Chris
Anzeige
AW: Mittelwert bei Userform wenn ein Feld leer ist
16.11.2017 17:56:21
Fexcel
Hallo Chris,
sorry für die späte Antwort, hatte etwas Stress.
Dein Code funktioniert einwandfrei! Ein End if hat noch gefehlt aber das hat mir de Debugger gleich gesagt.
Vielen Dank für deine schnelle Antwort! Hat mir wirklich sehr geholfen!!! :-)
Schönen Gruß
Felix
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

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