1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Excel 2010: Wertebereich auf pos./neg- Zahlen und 0 prüfen u. auswerten

Discussion in 'Office-Programme' started by BenC, Sep 16, 2014.

Thread Status:
Not open for further replies.
  1. BenC

    BenC Byte

    Hallo zusammen,

    ich möchte einen Wertebereich auf pos./neg- Zahlen und die Zahl 0 prüfen und auswerten lassen.

    Es können im Bereich B1:E1 Zahlen eingegeben werden. Diese können entweder negativ, positiv oder 0 sein.

    Je nach eingegebener Zahlen soll in Zelle B5 eine Bewertung in Form von Noten ausgegeben werden. Dabei gelten folgende Bedingungen:

    - Wenn 4x neg. Zahl, dann Note 6
    - Wenn 3x neg. Zahl und 1x pos. Zahl, dann Note 5,5
    - Wenn 3x neg. Zahl und 1x 0, dann Note 5
    - Wenn 2x neg. Zahl und 2x 0 dann Note 4,5
    - Wenn 2x neg. Zahl und 1x pos und 1x 0, dann Note 4
    - Wenn 2x neg. Zahl und 2x pos, dann Note 3,5
    usw.
    bis zur Note 1

    Habe versucht die Aufgabe mit der WENN-Funktion zu lösen, aber irgendwie kompliziert. Gibt es event. eine einfachere Methode/Alternative hierfür?

    Vielen Dank für alle Tipps im Voraus.

    mfg
    BenC
     
  2. Eric March

    Eric March CD-R 80

    Wie denn »einfach«?
    Du hast einen Satz Logikregeln ausformuliert - und wenn WENN() sich da an Umständlichkeit überbietet… …nähme ich ein Makro. Wobei das auch nicht unbedingt smarter in der Formulierung sein wird.

    Wenn wir auf Makros verzichten wollen schlage ich vor das alles um der Übersichtlichkeit Willen zu entzerren. Es gibt so viel Platz auf dem Blatt außerhalb des Sichtfeldes die WENN()s auf Zellgruppen zu verteilen, vielleicht sogar mit Binärmathematik oder Logik-Berechnungen Zwischenergebnisse zu sammeln um dies dann einen Schritt weiter nach dem selben Strickmuster zusammenfassen und ein Endergebnis anzustreben.

    Eric March
     
  3. VB-Coder

    VB-Coder Megabyte

    Du kannst es mittels VBA ziemlich gut lösen

    Hier mal ein leicht erweiterbares Beispiel

    PHP:
    Sub wertchecker()

        
    ' Variablen deklarieren
        Dim chkFelder As Range
        Dim negative As Long
        Dim nuller As Long
        Dim positive As Long


        ' 
    For Each Schleife um die positivennegativen und Null-Werte im Bereich B1 bis E1 zu zählen
        
    For Each chkFelder In ActiveSheet.Range("B1:E1")
            If 
    chkFelder.Value 0 Then negative negative 1
            
    If chkFelder.Value 0 Then nuller nuller 1
            
    If chkFelder.Value 0 Then positive positive 1
        Next chkFelder

        
    'Prüfung durchführen, wieviel Werte negativ, positiv und/oder null sind und in B5 die entsprechende Note zurück geben
        If negative = 4 Then
            ActiveSheet.Cells(5, 2).Value = "6"

            ElseIf negative = 3 And positive = 1 Then
                ActiveSheet.Cells(5, 2).Value = "5,5"

            ElseIf negative = 3 And nuller = 1 Then
                ActiveSheet.Cells(5, 2).Value = "5"


            ElseIf negative = 2 And nuller = 2 Then
                ActiveSheet.Cells(5, 2).Value = "4,5"


            ElseIf negative = 2 And positive = 1 And nuller = 1 Then
                ActiveSheet.Cells(5, 2).Value = "4"

            ElseIf negative = 2 And positive = 2 Then
                ActiveSheet.Cells(5, 2).Value = "3,5"

            '
    hier weitere ElseIf Anweisungen einfügen bis zur Note 1
        End 
    If
    End Sub
    Man könnte den Code noch um einiges verkürzen und mit anderen Schleifen arbeiten. Darauf habe ich aber bewusst verzichtet, da das ganze dann für einen Laien nicht mehr wirklich änderbar ist.
     
Thread Status:
Not open for further replies.

Share This Page