Office - Word, Excel und Co. 9.751 Themen, 41.572 Beiträge

Bug in Excel XP? Irrwitziges Verhalten nach Zellenlöschung

Olaf19 / 6 Antworten / Baumansicht Nickles

Hallo zusammen!

Gestern im Büro habe ich etwas reichlich Merkwürdiges mit Excel aus MS Office XP erlebt: Ich hatte eine Tabelle mit den Spalten A-F, benutzt waren die Zeilen von 1-30. In Spalte F stand jeweils die Formel =RUNDEN(Dn*En;0), wobei n für eine Zahl von 2-30 steht, je nach Zeilennummer. In D31 und F31 schließlich standen außerdem die Summen von Spalte D und F, in E31 der Quotient aus F31:D31.

Wie ich es jeden Tag mache, habe ich aus einer Access-Datenbank Daten in den Bereich von A1 bis E30 kopiert.

Erste Merkwürdigkeit: Sämtliche Formeln blieben auf den Ergebnissen des Vortags stehen - das konnte ja nun überhaupt nicht sein, dass alle Werte identisch waren, so einen großen Zufall gibt es nicht. Also habe ich als nächstes die Zellen von A1 bis E30 manuell gelöscht.

Zweite und noch viel größere Möglichkeit: obwohl die Tabelle nun leer war, mit Ausnahme der o.g. Formeln, zeigten diese immer noch die Ergebnisse des Vortags an, sowohl die 29 "RUNDEN"-Multiplikationen als auch die Summenformeln und der Quotient. Aktualisiert wurden die Zellen erst, nachdem ich mit der Maus in jede einzelne Zelle doppelgeklickt und wieder geentert hatte - jetzt stand alles auf 0 bzw. DIV/0.

Die dritte Merkwürdigkeit ahnt ihr sicher schon - nach dem Wiedereinkopieren der aktuellen Daten aus Access standen die Formeln nach wie vor auf 0 bzw. DIV/0 - ich musste erst wieder alles per Hand aktualisieren, d.h. Doppelklick auf den Zellinhalt und Enter, und dass bei allen Zellen mit hinterlegter Formel.

Was'n das? Einen solchen Schwachsinn habe ich noch nie erlebt. Kann sich jemand so etwas erklären? (Hoffentlich passiert jetzt nicht jeden Tag dieses Theater...).

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
ABatC Olaf19 „Bug in Excel XP? Irrwitziges Verhalten nach Zellenlöschung“
Optionen

Eventuell ist die automatische Aktualisierung der Formeln abgeschaltet? Würde zumindest das beschriebene Verhalten erklären. Was passiert denn bei einer 'händischen' Aktualisierung mit F9?

Frag mich aber nicht, wo bei Excel XP die Option ist, ich nutze 2007...

bei Antwort benachrichtigen
Olaf19 ABatC „Eventuell ist die automatische Aktualisierung der Formeln abgeschaltet? Würde...“
Optionen

Hi ABatC,

Aktualisierung mit F9 - das war das Stichwort! Nach kurzer Sucherei konnte ich der Excel-Hilfe unter F1 noch folgende Infos entlocken:

Drücken Sie F9 Berechnet Formeln, die sich seit der letzten Berechnung geändert haben, und von diesen abhängige Formeln in allen geöffneten Arbeitsmappen. Wurde für eine Arbeitsmappe die automatische Berechnung aktiviert, müssen Sie für die Berechnung nicht F9 drücken.

Unter automatisch bzw. automatische Berechnung habe ich nichts Brauchbares gefunden, wohl aber unter Berechnung allein - der Lösungsweg steht im Betreff:

Extras > Optionen > Berechnen > [_] manuell [x] automatisch

- bei mir war der Haken, aus welchem Grund auch immer, auf manuell gesetzt, und das auch erst seit gestern.

Vielen Dank für deinen Anstoß! Von alleine wäre ich - ganz ehrlich - nicht darauf gekommen.

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
ABatC Olaf19 „Extras > Optionen > Berechnen > [_] manuell [x] automatisch“
Optionen

Hatte ich vor Jahren bei irgendeiner Excel-Version auch schon mal....manche Excel-Versionen 'vergessen' den Schalter wohl gelegentlich. Ich hatte aber auch schon Tabellen mit Skripten, die diese Funktion dauerhaft abgeschaltet haben.

Aber schön, das das Problem so einfach zu lösen war...

bei Antwort benachrichtigen
Olaf19 ABatC „Hatte ich vor Jahren bei irgendeiner Excel-Version auch schon mal....manche...“
Optionen

Ehrlich gesagt... ich tippe eher auf meine eigene Schusseligkeit *g*.

Wir haben seit kurzem 2 Monitore pro Arbeitsplatz, genauer gesagt: nicht alle Kollegen, nur die, die das wollen. Ich wollte natürlich, und kann ehrlich gesagt bis heute nicht verstehen, wie man so etwas nicht wollen kann. Dann muss man eben ein paar Habseligkeiten etwas weniger verstreut auf dem Schreibtisch zusammenräumen, wenn der Platz nicht reicht - oder so.

Wie auch immer! Jetzt habe ich während des gesamten Arbeitstages immer auf einem der Monitore eine von zumeist mehreren gleichzeitig geöffneten SAP-Instanzen, auf dem anderen irgendein Office-Programm, Intranet oder Desktop. Manchmal auch links Outlook, rechts Excel, oder 2x SAP, wie es die Situation gerade erfordert.

Wir haben eine inhouse programmierte SAP-Transaktion, bei der recht viel mit der Taste F9 gearbeitet wird, auch in Verbindung mit Strg oder Shift. Ich vermute nun, ich wollte da irgendetwas machen, hatte aber versehentlich noch das Excelfenster auf dem anderen Monitor aktiv geschaltet, so dass der Irgendwas-plus-F9-Aufruf in Excel statt in SAP ausgeführt wurde. Und schwupp... schon hatte ich die Formelautomatik deaktiviert.

Mit nur *einem* Monitor wäre das natürlich nicht passiert, da siehst du immer, welches Fenster gerade aktiv ist...

Das wäre für mich die plausibelste Erklärung von allen... und dann hätte ich mehr aus der Sache gelernt als eigentlich geplant :-)

THX
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen
neanderix ABatC „Hatte ich vor Jahren bei irgendeiner Excel-Version auch schon mal....manche...“
Optionen

Es gibt leider VBA-Programmierer, die in ihren VBA-Skripten nicht etwa den aktuellen Status
von Application.Calculation speichern und nachher wieder restaurieren, sondern ihn schlicht weg entweder:

auf manuell setzen (Application.Calculation = xlCalculationManual) und dann auch nach Beenden ihrer Applikation so belassen oder den einfach willkürlich ändern - entweder auf manuell oder auf Application.Calculation = xlCalculationAutiomatic

Dabei gehört das so:

Sub IchMachMalWas()
Dim oldCalculation As Long
oldCalculation = Application.Calculation
Application.Calculation = xlCalculationManual
'Nun Irgendwelcher Code
Application.Calculation = oldCalculation
End Sub

wobei es bei größeren Applikationen vorteilhaft ist/sein kann, die ersten beiden Zeilen innerhalb der Sub in einem Modul so zu schreiben:

Public OldCalculation AS Long = Application.Calculation

durch die auslagerung in ein eigenständiges Modul wird OldCalculation nämlich zu einer globalen Variable, die Applikationsweit verfügbar ist.

Volker

Computers are like airconditioners - they stop working properly when you open Windows Ich bin unschuldig, ich habe sie nicht gewählt!
bei Antwort benachrichtigen
Olaf19 neanderix „Es gibt leider VBA-Programmierer, die in ihren VBA-Skripten nicht etwa den...“
Optionen

Hi Volker,

Die Exceldatei habe ich selbst erstellt - und sie enthält auch diverse von mir geschriebene Makros!

Nur habe ich in keinem dieser Makros festgelegt, dass Kalkulationen nur manuell erfolgen sollen - ich wusste bis heute nicht einmal, dass so etwas überhaupt geht...

Außerdem hätte ich sonst schon viel früher über dieses Problem stolpern müssen - die Makros leisten aber völlig klaglos ihren Dienst.

Nein, ich schätze, dass ich versehentlich irgendeine dieser F9-Tastenkombis betätigt hatte - wollte ich in einer SAP-Transaktion machen, die auf dem 2. Bildschirm gleichzeitig zu sehen war, hatte aber nicht beachtet, dass noch das Excel-Fenster auf dem ersten Monitor das aktive war.

Ich kann zwar nicht beschwören, dass es so gelaufen ist, das wäre aber die einzige plausible Erklärung.

CU
Olaf

Die Welt ist ein Jammertal ohne Musik. Doch zum Glueck gab es Bach, Beethoven, Haendel und Goethe (Helge Schneider)
bei Antwort benachrichtigen