Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Das Tabellenkalkulationsprogramm

Moderator: Moderatoren

graeserjan
*
Beiträge: 13
Registriert: Mo, 25.02.2008 17:56

Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von graeserjan »

Hallo werte Anwender und Experten, :shock:

ich hatte eine ziemlich umfassende Tabelle zur Personaleinsatzplanung erstellt.
Um schnell fertige Schichten einzutragen ist der komplette Bereich mit Sverweisformeln gefüllt.

Ich trage vorne die Schicht ein und durch die Sverweisformeln erscheint z.Bsp. von 7-14Uhr dann 14x die 1 und die Anzahl Formel zählt wieviele Zahlen vorkommen und ich habe eine Stundenzahl.
Seit Version 3 erscheint bei einem leeren Wochenblatt in den Stunden die maximal mögliche Stundenanzahl, da er die SVerweisformeln mitzählt. Lösche ich eine Fomel verringert sich die Anzahl der Stunden.

Man sieht es am besten in der angehangenen Tabelle.
In der angehangenen Tabelle ist es die Woche 1.

Kann ich da einen Tip bekommen wie es richtig gehen könnte?
Vielen Dank

Jan Gräser :roll:
Dateianhänge
test.ods
(103.43 KiB) 106-mal heruntergeladen
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von balu »

Hallo Jan,

ja, ich kann deine Beobachtungen bei mir mit der 3er-Portable bestätigen. Nur warum das so ist, kann ich auch nicht erklären. Aber ich würde jetzt mal fast spaßeshalber sagen, dass die 3er Version mit aller Macht versucht einem das Programmieren neu beizubringen :lol:

Ich kann dir aber eine alternative präsentieren.
Anstatt bei "stunden gesamt" Spalte AR

Code: Alles auswählen

=ANZAHL(H5:AI5)/2
nimm doch dann lieber

Code: Alles auswählen

=ZÄHLENWENN(H5:AI5;G5)/2
das funzt genau so gut.
Nur das dumme ist, die ANZAHL hast Du ja noch mehrmals eingesetzt, wie z.B. in der Spalte AQ (Z 6-8). Und da taucht dann wieder das Phänomen auf, dass selbst 0 Werte gezählt werden.
Ich wage mich jetzt aber mal weit aus dem Fenster, und behaupte das dies irgendwie damit zusammenhängt, dass Du eine Mischtabelle hast. Denn ich habe festgestellt, dass Du Excelformatierungen und Vorlagen da drin hast. Es kann, aber es muss nicht damit zusammenhängen. Mag ja auch sein, dass vielleicht meine Portable nicht ganz koscher ist.

Noch ein interessanter Effekt ist mir da aufgefallen.
Wenn ich in der 2.2.1er Version über ->Optionen ->"Nullwerte" anzeigen lasse, dann sehe ich kaum Nullen. Mache ich das in der Portable, dann werde ich regelrecht mit Nullen erschlagen. Und auf grund dessen habe ich mal eben bei beiden einen kleinen Test gemacht.
Wenn ich mehrere Zahlen eingebe und mit ANZAHL, oder ANZAHL2, mir die Menge an Zahlen zusammenrechnen lasse, dann kommt bei beiden das gleiche dabei raus. Und es spielt dabei keine Rolle ob da Nullen dabei sind oder nicht, das Ergebnis ist identisch.
Also, aus einen mir unerklärlichen grund werden in der 3er-Portable überall dort Nullen eingetragen, wo es in der 2.2.1er nicht der Fall ist.
Fragezeichen über Fragezeichen. :roll: :roll:


So, das wars von meiner Seite.

Gute nacht.
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
graeserjan
*
Beiträge: 13
Registriert: Mo, 25.02.2008 17:56

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von graeserjan »

Hallo Balu,

vielen Dank für Deine Hilfe.
Die Excel-Formatierungen kommen von der Originaltabelle. Ich habe mir das Grundgerüst, Name, Uhrzeit (Also Spalte A,B und Zeilen: 3,4 von einem Kollegen geborgt.
Ich hatte auch schon mit der zählenwenn Forml gespielt aber ich bekam nicht hin, das er zählt wenn da eine Zahl drin steht.
Mit dem Verweis auf die Zelle G5 klappert es vorherragend.
Da muß ich nur aufpassen, das ich in die Zeile dann genau die Zahl schreibe die in Zelle $G5 drin steht. Weil manchmal muß ne halbe Stunde hin oder hergeschoben werden. Ich werde die Formeln gleich anpassen.

Noch ne Frage:
Hast Du noch einen Tip, wie ich "Monatsübersicht C3" mit "Woche! G5" verknüpfen kann, so dass immer wenn ich die Schichhten in der Monatsübersicht eingebe, die in den Tabellen ausgefüllt werden?

Und noch eine Frage:
wenn ich in Tabelle "Kürzel" nach Nummer 6 noch Schichten eintrage,
erscheint in "Woche 1" überall wo eigentlich leer sein soll die Schicht 9
Siehe Tabelle. Das soll OO auf keinen Fall machen.

Oder soll ich die Frage in einem neuen Beitrag stellen?

Vielen Dank und viele Grüße

Jan Gräser
Dateianhänge
test.ods
(106.51 KiB) 75-mal heruntergeladen
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von balu »

Hallo Jan,
graeserjan hat geschrieben: wenn ich in Tabelle "Kürzel" nach Nummer 6 noch Schichten eintrage,
erscheint in "Woche 1" überall wo eigentlich leer sein soll die Schicht 9
Siehe Tabelle. Das soll OO auf keinen Fall machen.
Calc verhält sich da aber vollkommen korrekt. Denn wenn Du in "Woche 1" mit VERWEIS arbeitest, dann bleibt das nicht aus, was Du da zu sehen bekommst. Die Bemerkung in der OOo-Hilfe ist wohl für anfänger etwas verwirrend, aber das ist der Hinweis den Du da übersehen hast.
OpenOffice.org Hilfe hat geschrieben: Falls VERWEIS den Suchbegriff nicht finden kann, gibt es den größten Wert aus dem Suchvektor wieder, der kleiner gleich dem Suchbegriff ist.
Dazu musst Du folgendes verstehen: Dass eine Zahl, vom Zeichencode her, kleiner ist als ein Buchstabe.
Beispiel.
Die Zahl 9 hat den Zeichencode 57
Der Buchstabe X (großes x) hat den Zeichencode 88
Der Buchstabe x (kleines x) hat den Zeichencode 120
Mit anderen Worten.
Wenn VERWEIS das X nicht findet, dann gibt sie die 9 zurück, da diese die größte Zahl ist, aber kleiner als der Buchstabe (vom Zeichencode her betrachtet).

Das ist meine Beobachtung. Und wenn jemand meint das sich das anders verhält, so möge er mich bitte korrigieren.

Also ist die Formel, so wie Du sie eingesetzt hast, für deine Zwecke absolut untauglich. Jetzt hast Du aber zwei möglichkeiten.
1. Du ergänzt deine vorhandene Formel mit einer zusätzlichen abfrage
oder
2. Du nimmst eine SVERWEIS-Formel, die allerdings auch mit einer zusätzlichen abfrage ausgestattet sein muss.

zu 1.
anstatt

Code: Alles auswählen

=VERWEIS($G21;$Kuerzel.$B$4:$B$624;$Kuerzel.H$4:H$624)
nimmst Du lieber diese hier

Code: Alles auswählen

=WENN(ZÄHLENWENN($Kuerzel.$B$4:$B$624;$G21);VERWEIS($G21;$Kuerzel.$B$4:$B$624;$Kuerzel.H$4:H$624);"")
Ich nenne sie Variante 1


zu 2.

Code: Alles auswählen

=WENN(ZÄHLENWENN($Kuerzel.$B$4:$B$624;$G21);SVERWEIS($G21;$Kuerzel.$B$4:$AK$624;SPALTE()-1;0);"")
Und das ist die Variante 2

In beiden fällen ist eine ZÄHLENWENN vorgeschaltet, die erst mal nachschaut ob das Suchkriterium überhaupt vorhanden ist. Und wenn dem so ist, geht es mit der eigentlichen Formel weiter. Sollte aber das Suchkriterium nicht vorhanden sein, dann wird halt gar nichts gemacht.
Da der Aufbau der SVERWEIS etwas anders ist, also mit einer Matrix die die Suchspalte und den Datenbereich enthält, habe ich für den Index

Code: Alles auswählen

SPALTE()-1
eingesetzt. Da beim rüberkopieren von SVERWEIS sich der Index nicht automatisch anpasst, wird durch SPALTE die aktuelle Spaltennummer ausgelesen und eine 1 abgezogen. Wenn Du jetzt z.B. die Formel rüberkopiert hast, und in der Spalte T stehst, dann wäre jetzt der Index 19. Denn T ist der 20. Buchstabe, aber die Matrix in SVERWEIS geht ja von B4 bis AK624 und dementsprechend ist jetzt die gesamte Matrix um eins nach rechts versetzt. Und diesen Versatz korrigiere ich mit -1.

Es ist dir überlassen welche Formelvariante Du nimmst. Beide funktionieren gleichermaßen gut.

Übrigens! Netter nebeneffekt, wenn Du eine von beiden Formeln einsetzt.
Ich habe da mal eben die Variante 1 genommen, und schon sieht die Welt in OOo-3 gleich wieder viel besser aus. Denn jetzt werden keine Nullen mehr geschrieben, da ja nun ein Leerzeichen "" ausgegeben wird. Und schwupp-di-wupp funktioniert auch ANZAHL wieder so wie gewohnt :lol:

graeserjan hat geschrieben: Hast Du noch einen Tip, wie ich "Monatsübersicht C3" mit "Woche! G5" verknüpfen kann, so dass immer wenn ich die Schichhten in der Monatsübersicht eingebe, die in den Tabellen ausgefüllt werden?
Momentan noch nicht. Aber da kann ja auch noch jemand anderer helfen, damit ich nicht so alleine bin :lol:


Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von balu »

Hallo Jan,

zu früh gefreut, von wegen mit den Nullen anzeigen. Mir ist da eben aufgefallen das dennoch Nullen angezeigt werden, wenn Du eine Schicht auswählst. Um aber das endgültig abzuschalten habe ich die Varianten 1 + 2 noch mal eben schnell überarbeitet.

Variante 1 NEU

Code: Alles auswählen

=WENN(ZÄHLENWENN($Kuerzel.$B$4:$B$624;$G21);WENN(VERWEIS($G21;$Kuerzel.$B$4:$B$624;$Kuerzel.H$4:H$624)="";"";VERWEIS($G21;$Kuerzel.$B$4:$B$624;$Kuerzel.H$4:H$624));"")
Variante 2 NEU

Code: Alles auswählen

=WENN(ZÄHLENWENN($Kuerzel.$B$4:$B$624;$G21:G21);WENN(SVERWEIS($G21:G21;$Kuerzel.$B$4:$AK$624;SPALTE()-1;0)="";"";SVERWEIS($G21:G21;$Kuerzel.$B$4:$AK$624;SPALTE()-1;0));"")
In beiden Fällen wird nach der ZÄHLENWENN erst überprüft ob die zurückgebende Zelle leer ist, und wenn sie leer ist, wird nichts gemacht. Sollte sie aber nicht leer sein, dann wird halt das zurückgegeben was dadrin steht.


Also mal ganz ehrlich. Wenn sich das in der finalen 3er genau so verhält wie bei meiner portablen, na dann gute nacht.
Wäre schön wenn jemand etwas dazu sagen kann.


Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von balu »

Hallo paljass,

wenn Du auf Schläge, oder dergleichen, von mir wartest, dann kannst Du aber seeehr lange warten :D Ich seh da keine Veranlassung dazu :D

Ich habe jetzt schon verschiedenes mit der 3er-Portable getestet, und festgestelt das in der Datei selber der Wurm drinsteckt. Gebe ich z.B. eine VERWEIS-Formel, so wie sie in der test-Datei drin ist, in eine neue leere Datei ein, dann tritt nicht dieses Phänomen mit den Nullen auf. Okay, man kann wie in meinem letzten Beitrag zu sehen war, sich mit geeigneten Formeln behelfen. Das sind aber alles nur Krücken. Besser wäre es entweder mit einer anderen OOo-Version zu arbeiten, z.B. mit der Portable 2.4.1, oder das ganze Dokument neu erstellen. Dann aber alles nur mit OOo.

Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
Benutzeravatar
balu
********
Beiträge: 3812
Registriert: Fr, 24.08.2007 00:28
Wohnort: Warstein

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von balu »

Hallo Jan,

besser spät als nie.
Ich habe wegen VERWEIS mal eben in die Hilfe von OOo 3 geschaut, und jetzt versteh ich das Phänomen mit den Nullen besser.
OpenOffice.org 3.0 Hilfe hat geschrieben: Behandeln von leeren Zellen

Ab OpenOffice.org 3.0 und StarOffice 9 hat sich die Behandlung von leeren Zellen geändert.

Ursprünglich wurden leere Zellwerte je nach Kontext als Zahl 0 oder leere Zeichenkette aufgefasst. Nur der direkte Vergleich =A1=0 bzw. =A1="" ergab immer WAHR, falls A1 leer war. Ein leerer Inhalt wird jetzt weitergereicht, bis er benutzt wird. Deshalb ergibt =SVERWEIS(...)=0 bzw. =SVERWEIS(...)="" jeweils WAHR, falls sich der Verweis auf eine leere Zelle bezieht.

Ein einfacher Bezug zu einer leeren Zelle wird immer noch als die Zahl 0 angezeigt, obwohl sie nicht notwendigerweise vom Typ numerisch ist. Daher funktionieren Vergleiche mit der Bezugszelle wie erwartet.
Der Text, inklusive ein paar einfache Beispiele, ist in der Hilfe zu finden. Und zwar, wenn man im Index bei Suchbegriff VERWEIS eingibt und anschließend runter rollt bis zu Beispiel. Kurz davor steht dann ein Link mit folgendem Text: Behandeln von leeren Zellen. Den anklicken, und dann kann man das in ruhe mit den Beispielen sich durchlesen.



Die Behauptung von mir, dass meine zu letzt geposteten Formeln Krücken sind, ist auf Grund des neuen Sachverhalts ab der 3er Version, nicht korrekt. Es sind legitime möglichkeiten um die Nullen zu vermeiden. Es ist natürlich ein erhöhter Programmieraufwand, aber was will man machen wenn man keine Nullen haben will!? Besonders dann, wenn man z.B. mit ANZAHL arbeiten will.

Nur gut das ich das jetzt selber weiss, denn dadurch lassen sich schon jetzt Probleme vermeiden, die ansonsten mit der 3er-Version unvermeidbar wären.


Gruß
balu
Sei öfter mal ein Faultier, sag öfter mal "Ach was!" Dann kriegst du keinen Herzinfarkt, und hast ne menge Spass.

wehr rächtschraipfähler findet khan si behalden :D
graeserjan
*
Beiträge: 13
Registriert: Mo, 25.02.2008 17:56

Re: Programmfehler Anzahl und Anzahl2 Formel bei OO3 ?

Beitrag von graeserjan »

Hallo Balu,

vielen Dank für Deine Hilfe.

Ich habe Deine Formel eingefügt und es funktioniert sehr gut.

Jetzt kann ich auch die OO3 verwenden.
Ich hatte mir eine 2er Version portabel auf den Stick gezogen, aber das ist doch etwas umständlich.

Schön das es das Forum gibt.

MfG Jan Gräser
Antworten