Jump to content

Excel: Anzahl der Werte in einer Zelle summieren


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Geschrieben

Hallo!

 

Besteht die Möglichkeit, in Excel die Anzahl der Werte (Summanden) aus die sich ein Ergebnis zusammen setzt zählen zu lassen.

 

Der Benutzer hat eine (einzige Zelle) mit z.B: der Formel:

=1 + 3 + 5

 

Kann ich irgendwie die Anzahl der Summanden "zählen" um den Wert (3 in diesem Fall) in eine Zelle zu schreiben?

 

Danke!

Kiddy

Geschrieben

Hallo,

 

@Damian

Deinen Lösungsvorschlag habe ich nicht verstanden. Bei welcher Zellfunktion wird denn die Formel als Text zurückgegeben?

Ich kann es nur mittels VBA lösen.

 

@Power-Kiddy

Einen der folgenden Codeschnipsel in ein VBA-Modul einfügen und schon ist eine Funktion zum Zählen der Summanden einer Formel verfügbar.

 

Public Function anzahlSummanden(zelle As Range)
   Dim formel As String
   Dim zaehler As Integer
   zaehler = 0

   'wenn Formel vorhanden
   If zelle.HasFormula Then

       'Formel als Text holen
       formel = zelle.Formula

       'durch Text durchgehen und Anzahl der '+' zählen
       Dim i As Integer
       For i = 1 To Len(formel)
           If Mid(formel, i, 1) = "+" Then
               zaehler = zaehler + 1
           End If
       Next

       'da die Summanden immer einer mehr als die '+' sind
       If zaehler > 0 Then zaehler = zaehler + 1
   End If

   'Ergebnisrückgabe
   anzahlSummanden = zaehler
End Function

 

oder alternativ

Public Function anzahlSummanden2(zelle As Range)
   Dim formel As String
   Dim dummy As String
   Dim erg As Integer
   erg = 0

   'alle '+' aus Formel entfernen
   dummy = Replace(formel, "+", "")

   'Verkürzung der Formel entspricht der Anzahl der '+'
   If Len(dummy) < Len(formel) Then
       erg = Len(formel) - Len(dummy) + 1
   End If

   anzahlSummanden2 = erg
End Function

 

Grüße,

 

Sigma

Geschrieben

Hi.

 

@Damian

Deinen Lösungsvorschlag habe ich nicht verstanden. Bei welcher Zellfunktion wird denn die Formel als Text zurückgegeben?

Garnicht, mein Lösungsvorschlag ist nämlich Bockm****! :rolleyes: ;)

 

Hab glatt überlesen, dass Kiddy die Anzahl innerhalb einer Zelle zählen will. Wer lesen kann ist klar im Vorteil. :D

 

Damian

Geschrieben

@Power-Kiddy

Einen der folgenden Codeschnipsel in ein VBA-Modul einfügen und schon ist eine Funktion zum Zählen der Summanden einer Formel verfügbar.

 

Hallo!

 

Der Code funktioniert und ist recht übersichtlich!

Dank Dir!

 

Ich mache kaum was mit VBA und es kostet mich immer wieder Überwindung.

 

Gruß!

Kiddy

Geschrieben

Hallo,

 

freut mich, dass es geholfen hat.

Da Du den ersten Code verwendet hast, ist ein Fehler im zweiten glücklicherweise nicht zum Tragen gekommen. Dort fehlte noch die Zuweisung des Formeltextes.

 

Der Vollständigkeit halber ist hier noch der korrigierte:

 

Public Function anzahlSummanden2(zelle As Range)
   Dim formel As String
   Dim dummy As String
   Dim erg As Integer
   erg = 0

   If zelle.HasFormula Then

       'Formel als Text holen
       formel = zelle.Formula

       'alle '+' aus Formel entfernen
       dummy = Replace(formel, "+", "")

       'Verkürzung der Formel entspricht der Anzahl der '+'
       If Len(dummy) < Len(formel) Then
           erg = Len(formel) - Len(dummy) + 1
       End If
   End If

   anzahlSummanden2 = erg
End Function

 

Grüße,

 

Sigma

Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Erstelle ein Benutzerkonto oder melde dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde dich hier an.

Jetzt anmelden
×
×
  • Neu erstellen...