atum berechnen ausschalten

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
MsgBox
Bild

Betrifft: atum berechnen ausschalten
von: Gregor
Geschrieben am: 12.11.2015 10:39:20

Hallo
Ich möchte mit folgendem Code die automatische Berechnung ausschalten, damit in den Zellen nicht #Wert! erscheint, geht aber nicht:
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
If Target.Column = 1 And Target.Row = 4 Then
If Not IsDate(Target) Then
Application.ScreenUpdating = False 'Bildschirmaktualisierung ausschalten
Application.Calculation = xlCalculationManual 'automat.Berechnung ausschalten
MsgBox prompt:="Bitte gültiges Datum eingeben", _
Title:=" Hinweis für " & Application.UserName & ":"
Application.Undo
Application.EnableEvents = True
Application.Calculation = xlCalculationAutomatic 'automat.Berechnung einschalten
Application.ScreenUpdating = True 'Bildschirmaktualisierung einschalten
End
End If
Kann ich das lösen?
Danke und Gruss
Gregor

Bild

Betrifft: AW: atum berechnen ausschalten
von: Ulf
Geschrieben am: 12.11.2015 10:53:11
Hallo Gregor,
kann es sein, dass das ein und ausschalten schon klappt, abed das Ertgebnis nach dem
einschalten dann so aussieht, wie se aussieht.
Ulf

Bild

Betrifft: AW: atum berechnen ausschalten
von: Gregor
Geschrieben am: 12.11.2015 11:30:44
Hallo Ulf
Ja genau, es wird zwar aus- und auch wieder eingeschaltet, aber offenbar wird die Berechnung irgendwann zuvor ausgeführt, ansonsten würden ja die Zelleneinträge #Wert! nicht erscheinen. Aber genau diese möchte ich unterdrücken.
Ich versuchte die Excel-Einstellung auf Manuel zu stellen, und dafür im Code den Befehl "Calculate" einzubauen. Aber offenbar ist das eine Grundeinstellung, und alle Dateien werden auf Manuel gesetzt, was ich natürlich nicht will.
Gruss Gregor

Bild

Betrifft: Datum berechnen ausschalten
von: Matthias L
Geschrieben am: 12.11.2015 10:58:34
Hallo
Application.EnableEvents = False ausserhalb der If-Abfrage ist nicht gut
Das End soll sicher End If sein und ein End Sub fehlt.
Der Code so funktioniert bei mir auch ohne #Wert!

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 If Target.Column = 1 And Target.Row = 4 Then
  If Not IsDate(Target) Then
   Application.EnableEvents = False
   Application.ScreenUpdating = False
   Application.Calculation = xlCalculationManual
   'Hier Deine MsgBox
   Application.Undo
   Application.EnableEvents = True
   Application.Calculation = xlCalculationAutomatic
   Application.ScreenUpdating = True
  End If
 End If
End Sub
Gruß Matthias

Bild

Betrifft: AW: Datum berechnen ausschalten
von: EtoPHG
Geschrieben am: 12.11.2015 11:09:14
Hallo Gregor,
Zitat: Ich möchte mit folgendem Code die automatische Berechnung ausschalten, damit in den Zellen nicht #Wert! erscheint, geht aber nicht
1. Geht aber nicht: Ist keine hilfreiche Beschreibung für eine Fehleranalyse, bzw. Hilfestellung.
2. Wenn #Wert erscheint, muss ich annehmen, dass in A4 eine Formel steht und damit reagiert dein Worksheet_Change Ereignis NIE! Dieses Ereignis triggert nur bei manuellen oder programmatischen Änderungen eines Zellinhalts. Du musst diejenigen Zellen testen (im Target haben), die eine Resultatsänderung in der Formel verursachen und dann den Inhalt der Zelle A4 (nicht des Target!) testen. Hingegen reagiert Worksheet_Calculate auf Neuberechnungen, aber dort kannst du Berechnungen nicht rückgängig machen.
Gruess Hansueli

Bild

Betrifft: AW: Datum berechnen ausschalten
von: Gregor
Geschrieben am: 12.11.2015 15:01:09
Hallo Hansueli
In A4 steht keine Formel, hier wird das Datum eingetragen. Aber in den folgenden Zellen stehen Formeln, die sich auf A4 beziehen. Und sobald ich in A4 das Datum lösche, werden die Datum in den Zellen, die sich auf A4 beziehen, eben fälschlicherweise neu berechnet und als Datum #Wert! ausgegeben. Sobald dann in A4 wieder ein Datum eingegeben wird, stimmen die Datum wieder. Und diese Zwischenberechnung ohne Datum möchte ich verhindern.
Danke und Gruss
Gregor

Bild

Betrifft: AW: Datum berechnen ausschalten
von: Werner
Geschrieben am: 12.11.2015 21:27:08
Hallo Gregor,
da stellt sich mir dir Frage warum du nicht die Formeln entsprechend anpasst?
=WENNFEHLER(DeineFormel);"")
Dann hast du keine Fehlerausgabe in den Zellen mehr.
Gruß Werner

Bild

Betrifft: AW: Datum berechnen ausschalten
von: Gregor
Geschrieben am: 13.11.2015 08:17:48
Hallo Werner
Ja, das werde ich nun machen, nachdem es keine andere Lösung gibt. Die Zelleinträge wechseln dann gleichwohl, aber zumindest nicht auf #Wert! sondern auf leer.
Vielen Dank allen.
Gruss Gregor

Bild

Betrifft: AW: Datum berechnen ausschalten
von: Werner
Geschrieben am: 13.11.2015 15:54:56
Hallo Gregor,
hast du den Code von Matthias überhaupt probiert? Bei mir funktioniert der.
Gruß Werner

 Bild

Beiträge aus den Excel-Beispielen zum Thema "atum berechnen ausschalten"