Anzeige
Archiv - Navigation
1272to1276
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
Inhaltsverzeichnis

Pivot-Tabelle

Pivot-Tabelle
Karin
Hallo ihr Experten,
ich habe eine kleine Pivot-Tabelle erstellt. Am Ende wird der Umsatz pro Abteilung ausgegeben.
Ich möchte gerne erreichen, das ein "Null-Umsatz" in der Ergebnis-Spalte nicht erscheint.
Mit einem Filter möchte ich nicht arbeiten. Gibt es eine Möglichkeit z.B. mit einer Formel die "Null-Werte" zu unterbinden?
Hat jemand eine Idee?
Vielen Dank im Voraus.
Freundliche Grüße
Karin
Userbild

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Pivot-Tabelle
15.08.2012 12:43:13
fcs
Hallo Karin,
die Zeilen (Monate) mit Summenergebnis "0" kannst du nicht unterdrücken.
0 ist bei dir genau so ein Ergebnis wie jede andere Zahl. Mit Filtern kommst du auch nicht weiter
Als Kaufmann könnte man auch sagen viel Arbeit für nichts.
Du störst dich doch auch nicht daran, dass 3 Positionen 500 ergeben, warum stört es dich das 2 Positionen, die in der Summe 0 ergeben auch so dargestellt werden.
Evtl. solltest du Einnahmen und Ausgaben in den Ausgangsdaten in einer zusätzlichen Spalte kennzeichnen und in der Pivot als Spaltenfelder einbauen. Dann wird das Ganze auch aussagekräftiger.
Gruß
Franz
Anzeige
AW: Pivot-Tabelle
15.08.2012 15:13:16
Karin
Hallo Franz,
vielen Dank für die schnelle Antwort. Leider war das nur ein Beispiel, die "Nullen" in meiner Übersicht machen leider 2/3 der Ergebnisse aus.
Dann stören die doch schon.
Gruß
Karin
AW: Pivot-Tabelle
17.08.2012 10:55:04
fcs
Hallo Karin,
wenn du die Kategorien mit Monatssaldo 0 unterdrücken willst, dann muss du in den Quelldaten eine zusätzliche Spalte anfügen, in der der Monatsumsatz auf 0 geprüft wird.
Diese Spalte kannst du dann als Berichtsfilter/Seitenfilter im Pivotfilter einbauen um die entsprechenden Monate auszublenden.
Gruß
Franz
Art	Monat	Umsatz	Summe Umsatz 0
Gemüse	Jan	100	Ja
Gemüse	Feb	100	Nein
Gemüse	Mrz	100	Ja
Gemüse	Apr	100	Ja
Gemüse	Mai	100	Ja
Gemüse	Feb	-100	Nein
Fisch	Jan	200	Ja
Fisch	Feb	201	Ja
Fisch	Mrz	202	Ja
Fisch	Apr	203	Ja
Fisch	Mai	204	Ja
Gemüse	Jan	-50	Ja
Gemüse	Feb	-50	Nein
Gemüse	Mrz	-50	Ja
Gemüse	Apr	-50	Ja
Gemüse	Mai	-50	Ja
Gemüse	Feb	50	Nein
Fisch	Jan	-100	Ja
Fisch	Feb	-101	Ja
Fisch	Mrz	-120	Ja
Fisch	Apr	-120	Ja
Fisch	Mai	-135	Ja

Formel in D2: =WENN(RUNDEN(SUMMENPRODUKT(($A$2:$A$23=A2)*($B$2:$B$23=B2)*$C$2:$C$23);2)=0;"Nein";"Ja")
Anzeige
AW: Pivot-Tabelle
20.08.2012 16:26:08
Karin
Hallo Franz,
vielen Dank für deine Antwort. Das klappt auch mit der Hilfsspalte. Leider ist meine Auswertung ca. 35.000 Sätze groß. Ich habe die Formel vor einer halben Stunde eingefügt. Die Berechnung läuft immer noch.
Gruß
Karin.
Pivot-Tabelle vorbereiten-0-Summen unterdrücken
21.08.2012 10:06:34
fcs
Hallo Karin,
bereite deine Daten mit dem folgenden Makro auf.
Das sollte nur wenige Sekunden dauern. Ich hab das Makro unter Excel 2010 erstellt. Es sollte aber auch unter älteren Version funktionieren.
Die Werte der Konstanten im Code muss du an den Aufbau deiner Tabelle anpassen.
Gruß
Franz
Sub Umsatz_0_kennzeichnen()
Dim wks As Worksheet
Dim lngZeile As Long, lngZeile1 As Long, lngZeile2 As Long, lngX As Long
Dim strArt As String, strMonat As String, strJaNein As String
Dim dblSumme As Double
Dim StatusCalc As Long
Dim arrData
Const SpalteArt = 1    'Spalte mit Art - hier Spalte A
Const SpalteMonat = 2  'Spalte mit Monat - hier Spalte B
Const SpalteUmsatz = 3 'Spalte mit Umsatz - hier Spalte C
Const SpalteSum0 = 4   'Spalte zur Kennzeichnung Summe  0
Const SpalteRF = 5     'Spalte für temporäre Reihenfolge - Spalterechts von Daten wählen!!
Const ZeileTitel = 1   'Zeile mit den Spaltentiteln
With Application
.ScreenUpdating = False
.EnableEvents = False
StatusCalc = .Calculation
.Calculation = xlCalculationManual
End With
On Error GoTo Fehler
Set wks = ActiveSheet
With wks
Application.StatusBar = "Zeilennummern werden eingetragen für spätere Sortierung"
lngZeile1 = ZeileTitel + 1 'Zeile unterhalb Spaltentitel
lngZeile2 = .Cells(.Rows.Count, 1).End(xlUp).Row
'Werte für Reihenfolge temporär eintragen - wird am Ende wieder gelöscht
With .Range(.Cells(lngZeile1, SpalteRF), .Cells(lngZeile2, SpalteRF))
.FormulaR1C1 = "=Row()"
.Calculate
.Value = .Value
End With
'Daten sortieren nach Art und Monat
Application.StatusBar = "Daten werden sortiert nach Art undMonat"
With .Range(.Cells(lngZeile1, 1), .Cells(lngZeile2, SpalteRF))
.Sort key1:=.Cells(1, SpalteArt), Order1:=xlAscending, _
key2:=.Cells(1, SpalteMonat), Order1:=xlAscending, Header:=xlNo
End With
'Summen berechnen/kennzeichnen
arrData = .Range(.Cells(lngZeile1, 1), .Cells(lngZeile2 + 1, SpalteRF))
Application.StatusBar = "Umsätze werden gem. Summe0 gekennzeichnet"
For lngZeile = LBound(arrData, 1) To UBound(arrData, 1)
If strMonat  arrData(lngZeile, SpalteMonat) _
Or strArt  arrData(lngZeile, SpalteArt) Then
If strMonat  "" Then
If Application.WorksheetFunction.Round(dblSumme, 2) = 0 Then
strJaNein = "Nein"
Else
strJaNein = "Ja"
End If
For lngX = lngZeile1 To lngZeile2
arrData(lngX, SpalteSum0) = strJaNein
Next
End If
strMonat = arrData(lngZeile, SpalteMonat)
strArt = arrData(lngZeile, SpalteArt)
lngZeile1 = lngZeile
dblSumme = 0
Application.StatusBar = "Umsätze werden gem. Summe0 gekennzeichnet - Zeile: " &  _
lngZeile
End If
lngZeile2 = lngZeile
dblSumme = dblSumme + arrData(lngZeile, SpalteUmsatz)
Next
'Daten aus Array zurückschreiben
lngZeile1 = ZeileTitel + 1 'Zeile unterhalb Spaltentitel
lngZeile2 = .Cells(.Rows.Count, 1).End(xlUp).Row
.Range(.Cells(lngZeile1, 1), .Cells(lngZeile2 + 1, SpalteRF)) = arrData
Erase arrData
Application.StatusBar = "Daten werden sortiert in ursprüngliche Reihenfolge"
'Daten sortieren nach Reihenfolge
lngZeile1 = ZeileTitel + 1 'Zeile unterhalb Spaltentitel
lngZeile2 = .Cells(.Rows.Count, 1).End(xlUp).Row
With .Range(.Cells(lngZeile1, 1), .Cells(lngZeile2, SpalteRF))
.Sort key1:=.Cells(1, SpalteRF), Order1:=xlAscending, Header:=xlNo
End With
'Temporäre Spalte mit Reihenfolge wieder löschen
.Columns(SpalteRF).Clear
End With
Fehler:
With Err
Select Case .Number
Case 0 'alles OK
Case Else
MsgBox "Fehler-Nr.: " & .Number & vbLf & .Description
End Select
End With
With Application
.ScreenUpdating = False
.EnableEvents = False
StatusCalc = .Calculation
.Calculation = xlCalculationManual
.StatusBar = False
End With
End Sub

Anzeige
AW: Pivot-Tabelle
21.08.2012 08:24:59
Dave
Hallo Karin,
versuche es mal mit einem Wertefilter.
Auf das kleine Dreieck in der Pivottabelle rechts neben Monat, dann "Wertefilter" und als Auswahl dann
'Summe von Umsatz' - 'entspricht nicht' - '0'
Das sollte eigentlich das gewünschte Ergebnis bringen, auch ohne Hilfsspalte.
Da Excel manchmal "komisch" rechnet und evtl. 0 nicht gleich 0 ist, sondern vielleicht 0,00000123 und je nach Formatierung trotzdem 0 angezeigt wird, muss man ggf. anpassen:
'Summe von Umsatz' - 'liegt nicht zwischen' - '-0,001' und '0,001'
Gruß
David
Anzeige
AW: Pivot-Tabelle - 0 Summen ausblenden
21.08.2012 10:17:57
fcs
Hallo Dave,
Danke für den Tip. Das funktioniert in Excel 2010 super.
Ich bin mir aber nicht sicher ob Excel 2000 das auch schon so konnte.
Gruß
Franz
AW: Pivot-Tabelle - 0 Summen ausblenden
21.08.2012 10:27:48
Dave
Hi Franz,
stimmt, darauf habe ich gar nicht geachtet, aber wer arbeitet denn heute noch mit Excel 2000? ;-) (kleiner Scherz!!!)
Ich hab übrigens 2007 und da geht's auch schon.
Gruß
David

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige