Herbers Excel-Forum - das Archiv
Negative Zahlen zählen, jedoch Positive nicht
Informationen und Beispiele zu den hier genannten Dialog-Elementen:
Betrifft: Negative Zahlen zählen, jedoch Positive nicht
von: Midgaardslang
Geschrieben am: 08.01.2007 14:04:02
Hallo,
wie kann ich nur negative Zahlen zählen lassen, jedoch keine positiven?
Problem:
Ich muss aus einer Tabelle, in der sowohl negative als auch positive Werte vorkommen können, nur die negativen aufrechnen, ohne die positiven einzubeziehen. Die Werte sind gemischt.
Ich dachte an eine Wenn Funktion, die als Bedingung erfordert, das die Zahl negativ ist, wie lautet jedoch das "Kürzel" dafür? (A1:M300)=NEG ist es nicht :-). Hab Excelhilfe auch schon durch, ohne darüber gestolpert zu sein.
Betrifft: AW: Negative Zahlen zählen, jedoch Positive nicht
von: roland
Geschrieben am: 08.01.2007 14:10:00
Hi,
die Lösung ist die Funktion SUMMEWENN
Gruß
Roland
Betrifft: =ZÄHLENWENN(A:A;"<0") owT
von: Daniel Eisert
Geschrieben am: 08.01.2007 14:10:55
Betrifft: AW: =ZÄHLENWENN(A:A;"<0") owT
von: Midgaardslang
Geschrieben am: 08.01.2007 15:22:30
Tja, man rostet ein, das wenn man an Wenn-Funktion und Summe denkt, nicht auf Summewenn kommt.... :-)
Problem:
Leider kann ich hier ja nicht mehrere Bereiche verknüpfen, also
Summewenn(A1:D14,A16:D24,etc;"<0";A1:A14,A16:D24,etc)
Betrifft: AW: =ZÄHLENWENN(A:A;"<0") owT
von: Midgaardslang
Geschrieben am: 08.01.2007 15:52:35
Heut is mein Hirn schon etwas weichgeklopft, kann ich natürlich doch:
=SUMMEWENN(D8:M11;"<0";D8:M11)+SUMMEWENN(D19:M22;"<0";D19:M22)+......
Betrifft: AW: Negative Zahlen zählen, jedoch Positive nicht
von: Michael
Geschrieben am: 08.01.2007 14:25:10
Ein Makro erstellen wäre denke ich auch eine Lösung:
Als Button:
Private Sub CommandButton1_Click()
Dim c As Range
Dim wert As Long
For Each c In ActiveSheet.Range("A1:M300") 'oder .UsedRange
If c.Value < 0 Then wert = wert + c.Value
Next c
ActiveSheet.Cells(2, 1).Value = wert
End Sub
Automatisch:
In ein Modul:
Sub negative()
Dim c As Range
Dim wert As Long
For Each c In ActiveSheet.Range("A1:M300") 'oder .UsedRange
If c.Value < 0 Then wert = wert + c.Value
Next c
ActiveSheet.Cells(2, 1).Value = wert
End Sub
Und in 'DieseArbeitsmappe':
sub workbook_open()
call negative
End Sub
Betrifft: Warum einfach, wenns auch kompliziert geht ;-)
von: Daniel Eisert
Geschrieben am: 08.01.2007 14:38:34
Betrifft: AW: Negative Zahlen zählen, jedoch Positive nicht
von: Midgaardslang
Geschrieben am: 08.01.2007 15:25:07
Als Makro klingt nicht schlecht, jedoch fehlt mir hier die "zelle" zum ausgeben.
Sorry für mein n00bishes Nachhaken, jedoch sind meine VBA Kenntnisse gerade erst am Entstehen.
Betrifft: AW: Negative Zahlen zählen, jedoch Positive nicht
von: Michael
Geschrieben am: 08.01.2007 15:46:16
Die Zeile:
ActiveSheet.Cells(2, 1).Value = wert
gibt den berechneten Wert namens 'wert' in der Zelle (2, 1) aus. Die erste Zahl steht für die Zeile, die zweite für den Spaltenbuchstaben, in meinem Beispiel A=1.
Für die Ausgabezelle E43 wäre die richtige Umsetzung also:
ActiveSheet.Cells(43, 5).Value = wert
Betrifft: AW: Negative Zahlen zählen, jedoch Positive nicht
von: Daniel Eisert
Geschrieben am: 08.01.2007 15:57:29
Hallo
nochmal, du brauchst kein Makro.
wenn du die negativen Zahlen in einem Zellbereich zählen willst (also die Anzahl ermitteln) willst, nimmst du diese Formel (im Beispiel für Spalte A):
=ZÄHLENWENN(A:A;"<0")
wenn du dagegen die negativen Zahlen zusammenzählen (also aufaddieren) willst, nimmst du
=SUMMEWENN(A:A;"<0";A:A)
Gruß, Daniel