online 1
gast (50)

/ Forum / Datenbanken

DatenbankenDatenbanken

Fragevon morpheus__85 vom 04.12.2019, 12:40 Options

Überlauf ?

Mahlzeit!

Was bedeutet denn die Fehlermeldung "Überlauf" im Zusammenhang mit einer Abfrage?
Ich möchte eine Abfrage über eine Abfrage erstellen, habe dann dies mit einem Kriterium versehen >0 dann erhalte ich die Fehlermeldung "Überlauf"

Was bedeutet das?

gruß
morpheus


Antwort schreiben

Antwort 1 von Marie vom 05.12.2019, 04:15 Options

Meistens wenn Du durch 0 dividierst. ist das vielleicht der Fall??

Gruß Marie

Antwort 2 von morpheus__85 vom 05.12.2019, 07:45 Options

Hallo Marie,

das kann gut sein.
Es ist nämlich so , dass bei den berechneten Feldern welche dabei sind, bei denen durch 0 dividiert wird. Da steht dann in der Spalte Anfügevoraussetzung #Fehler!
Aber die Spalte die ich mit > 0 kruppieren möchte sind eig nur noch Werte also da wird nur multipliziert aber nicht dividiert.
Deshalb verstehe ich das trotzdem nicht ganz. Wenn ich dann sage > 0 wieso schmeist er mit dann nicht zumindest die 0 Werte raus und lässt die #Fehler halt drin?

gruß
morpheus

Antwort 3 von morpheus__85 vom 05.12.2019, 07:48 Options

sorry kleiner Fehler.
hinten wird nicht multipliziert sondern addiert.

gruß

Antwort 4 von morpheus__85 vom 05.12.2019, 08:42 Options

Ich hab das jetzt so gelöst.
Ich hab eine aktualisierungsabfrage drüber laufen lassen die mir 0 durch "" ersetzt und dann fallen die #Fehler raus und dann kann ich eine Abfrage drüber erstellen und das Kriterium > 0 eingeben.

Gruß
Morpheus

Antwort 5 von Marie vom 06.12.2019, 10:46 Options

Äh, Du machst doch wohl nicht deshalb den ganzen Aufwand mit den 10 Abfragen??

Du kannst doch schreiben nicht Null.

Gruß Marie

Antwort 6 von morpheus__85 vom 06.12.2019, 11:09 Options

Hallo Marie

es ist so.

ich habe einen Mitarbeiter und dazu Werte und die Zeiten dazu.

z.B.
Name..........Bearbeitete.EMails........BenötigteZeit.......Produktivität
Max...............10.....................................10..........................1...................

Ich Teile immer die Bearbeitete durch die Zeit.
Das ganze hab ich zihemlich oft.
Die Produktivität ist also immer ein berechnetes Feld.
Am Ende addiere ich alle Produktivitäten.
Das Problem ist.
Ich habe in manchen Datensätzen leider eine 0 drin.
Wenn die 0 bei der Zeit drin steht wird durch 0 geteilt und in der Produktivität steht dann #Fehler is ja logisch weil division durch 0 nicht möglich ist.
Deshalb muss ich die 0 len raus haben.
Wenn ich nämlich beim Feld wo ich die PRoduktivitäten addieren ein Kriterium eingeben um zu filtern kommt "Überlauf". Sobald in meine Datensätzen keine Produktivität #Fehler aufweist kann ich das Feld problemlos mit einem Kriterium versehen.
Ich muss also die 0 len rausbekommen sonst funktioniert das ganze nicht.
Is leider ziehmlich kompliziert beschrieben.
Deshalb bräuchte ich am einfachsten einen Code für VBA der mir alle Nullen über suchen und ersetzten in ein "" umsetzt das die Spalten leer bleibne. Wenn durch "" geteilt wird bleibt die Produktivität auch "" und dann steht am Ende als Ergebnis einfach ne 0 drin bei der Addition und die kann ich rausfiltern.

gruß
morpheus

Antwort 7 von Marie vom 06.12.2019, 11:22 Options

Ich glaube Du verrennst Dich gerade, ob Du durch 0 oder durch nix dividierst gibt sicherlich denselben Überlauffehler.

Schick doch einfach mal den Code wo Du diese Division durchführst. Weisst ja mittlerweile, wenn es eine Abfrage ist, dann Ansicht SQL und hier reinkopieren.

Das geht doch auch so, dass Du nur dann teilst, wenn benötigte Zeit

nicht Null, Dann kannste Dir doch die Ersetzerei sparen.

Gruß Marie

Antwort 8 von morpheus__85 vom 06.12.2019, 12:32 Options

Hallo Marie

das ganze zu posten wird wahrscheinlich etwas tu groß.

Das ganze sieht so aus.

Select Menge, Zeit, Menge/Zeit AS Produktivität

und das ganze dann eben 10 - 15 mal.

und als letztes dann beim sql

nz(Prod1) + nz(Prod2) + nz(Prod3) ..... As Anzeigebedingung.

Wenn vorne in einer Produktivität durch 0 geteilt wird steht in der Produktivität #Fehler, und dann steht auch in der Anzeigebedingung #Fehler und sobald in der Anzeigebeindungen 1 mal #Fehler auftaucht kommt es zum Überlauf. Ich habe allerdings Datensätze wo in der Menge etwas drin steht in der Zeit aber das Feld leer ist, da kommt dann bei der Produktivität wirklich "" raus und nicht #Fehler deshalb müsste ich die 0 rausbekommen.

gruß
morpheus

Antwort 9 von Marie vom 06.12.2019, 13:58 Options

SELECT Tabelle1.Menge, Tabelle1.Zeit, IIf([Zeit]>0,[Menge]/[Zeit],"") AS Produktivität
FROM Tabelle1;


Na mehr brauch ich doch nicht. Wenn Du statt

Zitat:
Menge/Zeit AS Produktivität
das da unten schreibst, dann is doch gut.

Zitat:
IIf([Zeit]>0,[Menge]/[Zeit],"") AS Produktivität


Gruß Marie

Ähnliche Themen

winprint.drv
surf  29.03.2007 - 152 Hits -

Laufzeitfehler6 Überlauf
pommes3  24.06.2007 - 159 Hits -

VBA Automatisches Eintragen in bestimmte Zellen
püppi  02.11.2007 - 74 Hits - 12 Antworten

Drucker Epson D68
concho  04.02.2008 - 384 Hits - 1 Antwort

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 07:32:25 2026