Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema MsgBox
BildScreenshot zu MsgBox MsgBox-Seite mit Beispielarbeitsmappe aufrufen

PIVOT-Tabelle : Feldwert doppelt in Filter

Betrifft: PIVOT-Tabelle : Feldwert doppelt in Filter von: NoNet
Geschrieben am: 15.08.2014 15:25:24

Hallo Excelperten,

ich habe hier gerade ein merkwürdiges Phänomen in einer EXCEL-Tabelle :
In Spalte A stehen untereinander 100 ganzzahlige Werte zwischen 18 und 20.
Aus diesen Daten habe ich auf dem gleichen Tabelleblatt eine PIVOT-Tabelle erzeugt.
Nun stehen in der PIVOT-Tabelle 2x untereinander der Wert 18 (ebenso im Filterfeld der Tabelle) !

Es handelt sich in der Ausgangstabelle jedoch nicht um "unterschiedliche" Werttypen, sondern immer um Zahlen (sieh Test in Spalte B). Mit einer kleinen Testtabelle mit ZÄHLENWENN() wird auch der korrekte Wert für die Anzahl der "18er-Werte" ermittelt.

Was ist da in der PIVOT-Tabelle los ? - Die PIVOT-Tabelle habe ich neu erstellt, es können also keine "alten Daten" im PIVOT-Cache liegen. ebenso habe ich die PIVOT-Tabelle mehrfach aktualisiert, die Option "Anzahl der beizubehaltenden Elemente" (betrifft Aktualisierung von PIVOT-Tabellen) auf "KEINE" gestellt, Excel komplett beendet und neu gestartet : Keine Änderung !



Stimmt da etwas in den Daten nicht ?? - Könnte jemand das Verhalten bitte mit der angehängten Datei prüfen und mir ein Feedback geben ?

https://www.herber.de/bbs/user/92135.xlsx

Vielen Dank,
ein ratloser NoNet

  

Betrifft: Hinweis : Wert in Zelle A76 ist wohl faul... von: NoNet
Geschrieben am: 15.08.2014 16:25:46

Hallo Mitlesende und Mitgrübelnde,

ich habe nun durch "Trial and error" herausgefunden, dass die PIVOT-Tabelle ein Problemchen mit der Zahl in Zelle A76 hat : Wenn ich diese Zahl manuell editiere und die PIVOT-Tabelle aktualisiere, stimmt die Zusammenfassung, ändere ich nur irgendeinen anderen Wert in der Tabelle und belasse A76 wie gehabt, bleibt der Fehler in der PIVOT-Tabelle bestehen ¿!?

Das Merkwürdige : Die Zahlen wurden in einer anderen Mappe/Tabellenblatt per Funktion ermittelt und dann in diese neu erstellte Mappe per "Einfügen - Werte" eingefügt ! - Es kann also kein Format-Fehler oder anderes der Grund für den Fehler sein !

Es macht mich nun sehr skeptisch, dass man Excel offenbar nicht vertrauen kann !!!
Vielleicht findet ja jemand noch etwas anderes in dieser Mappe/Tabelle heraus ??

Danke und ein schönes WE, Gruß NoNet

PS : Ich bin weiterhin an euren Test bzgl. dieser Datei interessiert : verhält sich diese PIVOT-Tabelle bei euch ebenfalls fehlerhaft ?


  

Betrifft: AW: Hinweis : Wert in Zelle A76 ist wohl faul... von: Mullit
Geschrieben am: 15.08.2014 21:31:40

Hallo,

ich hab' Den 'Bug' zunächst auch, aber ich vermute, Du wirst da irgendein nicht darstellbares Zeichen in der Zelle haben, da durch Editiermodus + Aktualisieren sich die Tabelle bereits normalisiert.

Läßt man vorher Test1 über den Zahlenbereich laufen, wird tatsächlich die infizierte Zelle nicht in "Bug" umgewandelt.

Läßt man Test2 laufen werden die Zahlen normalisiert und bei erneutem Start von Test1 wird auch A76 in "Bug" umgewandelt...

Option Explicit
     
Public Sub test1()
Dim objCell As Range
Dim avntArray(1 To 2) As Variant
Static blnFlag As Boolean

If Not blnFlag Then
avntArray(1) = 18
avntArray(2) = "bug"
Else
 avntArray(1) = "bug"
avntArray(2) = 18
End If
For Each objCell In Selection
   If objCell = avntArray(1) Then _
     objCell = avntArray(2)
Next
blnFlag = Not blnFlag
End Sub

Public Sub test2()
Dim objCell As Range
   For Each objCell In Selection
     objCell = objCell.Text
   Next
End Sub

Gruß,


  

Betrifft: AW: Hinweis : Daran nicht.. von: Ewald
Geschrieben am: 15.08.2014 23:19:13

Hallo,

es liegt nicht an der Zelle A76.

Nimmt man die Zeile 101 raus, ist alles in Ordnung.

Da dort aber keine 18 steht, kann es am Wert selber auch nicht liegen.

Warum aber bei 99 Zeilen alles in Ordnung ist und bei 100 Zeilen der Fehler kommt,konnte ich aber auch noch nicht finden.

Gruß Ewald


  

Betrifft: AW: Hinweis : Daran nicht.. von: Mullit
Geschrieben am: 16.08.2014 00:15:42

Hallo Ewald,

da mußt Du was anderes getestet haben als ich:

Wenn ich die Werte in Zeile 101 lösche, bleibt nach Aktualisieren des Pivottable weiterhin eine doppelte 18 in der Anzeige bestehen...

Laß mal die Makros laufen, die 18 in A76 wird, wie NoNet sagt, nicht als 18 erkannt.

Wird den Zellen der Textwert zugewiesen, verschwindet der Effekt und nach Aktualisierung des Pivottable erscheint 18 in einfacher Ausführung mit der richtigen Anzahl 13.....

Gruß, Mullit


  

Betrifft: AW: Hinweis : Daran nicht.. von: Ewald
Geschrieben am: 16.08.2014 00:47:32

Hallo Mullit,

ich habe die Tabelle runtergeladen,

habe dann den Bereich der Pivot geändert um zu sehen,wann die zweite 18 kommt.

Wenn nur 99 Zeilen in der Pivot sind, paßt das.Erst die 100.ste bringt die doppelte 18.

Es liegt also nicht an den Werten.

Wenn du im Inet nach Pivottabellenfehler 100 Zeilen suchst hagelt es an Beiträgen.

Es ist ein Pivotproblem das sogar MS einräumt.

Gruß Ewald


  

Betrifft: AW: Hinweis : Daran nicht.. von: Mullit
Geschrieben am: 16.08.2014 01:09:11

Hallo Ewald,

tja, da kann ich Zeilen löschen und Bereiche ändern wie ich will, ich erhalte immer eine doppelte 18 im Pivottable....

Um meine These zu untermauern:

kopier' mal die 18 aus A76 nach A90; A85; A83 usw. u. aktualisiere den Table:
Die Anzahl der ersten 18 im Pivottable erhöht sich mit.....

Oder kopier' die 18 aus A76 nach D21 und eine andere 18 nach E21 und laß' laufen:

Option Explicit

Sub test()
   If Cells(21, 4) = Cells(21, 5) Then _
     MsgBox "gleich"  
End Sub
...Keine Msgbox.....Ungleich

Gruß, Mullit


  

Betrifft: AW: Hinweis : Wert in Zelle A76 ist wohl faul... von: Luschi
Geschrieben am: 16.08.2014 13:03:38

Hallo NoNet,

ich habe Deine Datei mal entzippt und im SubDir xl\worksheets\sheet1.xml steht das hier:



d.h.: in Tabelle1!A76 steht nicht der Wert '18' sondern '17.999999999999996'
Wenn ich diesem Wert (allerdings mit Komma statt Punkt) in eine stinknormale Excel-2013/2010/2003-Zelle ohne jegliche Formatierung reinkopiere, wird mir stets eine '18' angezeigt!!!

Gruß von Luschi
aus klein-Paris


  

Betrifft: ...was ja auch durch NoNets Feststellung, ... von: Luc:-?
Geschrieben am: 16.08.2014 18:02:45

…dass nach manuellem Editieren alles richtig wird, korrespondiert, Luschi;
da nach deiner Untersuchung in D13 dasselbe steht, wird's hier wohl auf das fehlende s="2" ankommen. Ggf ist also doch was im Ausgangsmaterial ein klein wenig anders… ;-)
Gruß, Luc :-?


  

Betrifft: Korr: 'durch' lies 'mit'! owT von: Luc:-?
Geschrieben am: 16.08.2014 18:04:18

:-?


  

Betrifft: AW: Korr: 'durch' lies 'mit'! owT von: Luschi
Geschrieben am: 16.08.2014 18:44:35

Hallo Luc,

Nonets Beispiel war doch sicher nur ein kleiner Ausschnitt aus einem riesigen Datenpool von Werten in der Tabelle. Wenn man also noch nicht mal dem Anzeigewert der Bearbeitungzeile trauen darf, na dann Gute Nacht Excel.
In der '\xl\sharedStrings.xml' macht Excel ja darauf aufmerksam: PIVOT : Fehler bei Wert 18 (doppelt !)
nur teilt es niemanden mit, so das der User nur dumm vor den BS staunen kann.

Gruß von Luschi
aus klein-Paris


  

Betrifft: AW: Korr: 'durch' lies 'mit'! owT von: Ewald
Geschrieben am: 16.08.2014 19:29:23

Hallo,

NoNet sprach Eingangs von 100 Werten.

Die Werte können nicht in Excel erstellt sein, wurden ev. kopiert.(scheinbar aus Calc

Alle Excelmöglichkeiten sagen 18

VBA

Zelle.Value
Zelle.Text
Zelle.Formula

Excel

bedingte Formatierung = 18
bedingte Formatierung < 18
selbst in der Pivot selbst Summe von Werte

Allerdings ist es bei mir so, wenn ich in der Pivot den Bereich verkleinere (A10), die Datei unter anderem Namen speichere und dann wieder den Bereich vergrößere ist der Fehler weg.

schau ich mir die xml an so steht da jetzt auch die 18 drin.

Obwohl die Pivot schon immer das Sorgenkind ist,scheint mir in diesem Fall eher das Übertragen der Werte der Verursacher zu sein.

Gruß Ewald


  

Betrifft: Ja, das denke ich auch, aber da muss man ... von: Luc:-?
Geschrieben am: 17.08.2014 04:05:20

…erst mal drauf kommen, Ewald & Luschi,
dass so ein Wert in der XML dann plötzlich anders gekennzeichnet ist und das wahrscheinlich die Anpassung - offensichtlich ja nur zeitweilig - verhindert.
Morrn + schöSo, Luc :-?


  

Betrifft: Danke Luschi - Guter Hinweis ! von: NoNet
Geschrieben am: 18.08.2014 13:35:54

Hallo Luschi,

das ist schon mal ein guter Hinweis und sicherlich auch die Ursache für die "doppelte" 18 in der PIVOT-Tabelle !

@Luschi :
- Deine Vermutung, dass der Original-Datenbestand viel größer ist, stimmt übrigens NICHT : Das sind tatsächlich die Originaldaten (exakt 100 Werte !)
- Die Anzeige "PIVOT : Fehler bei Wert 18 (doppelt !)" stammt nicht von Excel, sondern durch den Text in Zelle D10 ;-)



@Ewald :
- Das Problem liegt nicht an den 100 Werten, d.h. wen ich die Datenquelle auf A2:A100 (=99 Werte) reduziere), bleibt der Fehler eenfalls erhalten.

- Die Daten habe ich wie oben beschrieben, zunächst per Funktion berechnet und dann per "Inhalte einfügen... - Werte" in dieses Tabellenblatt übertragen ! Die Funktion war =ZÄHLENWENN(..) und die kann als Resultat logischerweise nur ganzzahlige Werte als Ergebnis liefern !) - keine halben oder "bruchteilhafte" Zellen o.ä. ;-)

- Das Übertragen der Werte wird vermutlich der Verursacher sein - doof nur, dass die Zelle (wie von Dir per VBA + Bed.Format. getestet, von mir mit =ZÄHLENWENN()) in allen Varianten den Wert 18 ergibt und daher für den User nicht erkennbar ist, dass in der XML der Wert 17,9999... steht !


@Luc : Auch Dir ein Dankeschön für's Mitdenken und Deine Kommentare ;-)



- Am XLSX-Format liegt es offenbar nicht, denn der Fehler tritt auch auf, wenn ich die Mappe als XLS speichere.
- Bei Formatierung der Werte mit 20 Nachkommastellen wird in A76 ebenfalls nur 18 und nicht 17.999999999999996 angezeigt
- Die Option "Genauigkeit wie angezeigt" behebt in diesem Fall den Wertfehler, allerdings ist diese natürlich mit Vorsicht zu genießen

Erschreckend finde ich das Verhalten von Excel allemal - in solch einer kleine PIVOT-Tabelle ist das noch mit bloßem Auge erkennbar, bei einer größeren Anzahl unterschiedlicher Werte fällt ein dermaßen erzeugter "doppelter" wert jedoch kaum noch auf, verfälscht aber dennoch das Ergebnis der PIVOT-Tabelle !

Salut und Schöne Woche, NoNet


  

Betrifft: AW: Danke Luschi - Guter Hinweis ! von: Mullit
Geschrieben am: 19.08.2014 14:32:16

Hallo,

[...]ist das noch mit bloßem Auge erkennbar,[...]

prog Dir doch was, das die Ausreißer anzeigt...

Gruß,


 

Beiträge aus den Excel-Beispielen zum Thema "PIVOT-Tabelle : Feldwert doppelt in Filter"