DetailPage-MSS-KB

Knowledge Base

Artikel-ID: 213593 - Geändert am: Montag, 15. August 2005 - Version: 3.1

Dieser Artikel wurde zuvor veröffentlicht unter D41163
Dieser Artikel ist eine Übersetzung des folgenden englischsprachigen Artikels der Microsoft Knowledge Base:
213593  (http://support.microsoft.com/kb/213593/EN-US/ ) XL2000: Date Returned in a Macro Is Four Years Too Early

Problembeschreibung

Wenn Sie ein Makro ausführen, das ein Datum aus einer Zelle eines Arbeitsblattes verwendet, liegt das vom Makro zurückgegebene Datum möglicherweise vier Jahre und einen Tag vor dem aktuellen Datum.

Ursache

Ein Makro gibt ein Datum zurück, das vier Jahre und einen Tag vor dem aktuellen Datum liegt, wenn Sie auf der Registerkarte BERECHNUNG des Dialogfeldes OPTIONEN das 1904-Datumssystem auswählen und eine der folgenden Bedingungen zutrifft:
  • Das Makro verwendet die Wert2-Eigenschaft, wenn es das Datum speichert.
       -oder-
  • Das Makro verwendet eine Funktion in der Microsoft Excel-Anwendungsbibliothek, wenn es das Datum speichert.
Umgehungsmöglichkeit:
Das folgende Makro ermittelt, ob das 1904-Datumssystem ausgewählt wurde. Es konvertiert das Datum in das 1900-Datumssystem und gibt das erwartete Datum zurück.

Die Verwendung der hier aufgeführten Information, Makro- oder Programmcodes geschieht auf Ihre eigene Verantwortung. Microsoft stellt Ihnen diese Informationen, sowie Makro- und Programmlistings ohne Gewähr auf Richtigkeit, Vollständigkeit und/oder Funktionalität, sowie ohne Anspruch auf Support zur Verfügung. Bei Makro- und Programmlistings soll lediglich exemplarisch die Funktionsweise des Beispiels aufgezeigt werden.: Für weitere Informationen zu der Unterstützung, die Microsoft Ihnen bietet, siehe die folgende Seite im World Wide Web:
   http://www.microsoft.com/mcsp/
Weitere Informationen zu den Support-Optionen, die bei Microsoft verfügbar sind, finden Sie auf der folgenden Seite im World Wide Web:
   http://www.microsoft.com/support/supportnet/overview/overview.asp
So verwenden Sie das Makro:
  1. Zum Einfügen einer neuen Arbeitsmappe klicken Sie im Menü DATEI auf NEU. Klicken Sie anschließend auf ARBEITSMAPPE und auf OK.
  2. Klicken Sie im Menü EXTRAS auf OPTIONEN. Klicken Sie auf die Registerkarte Berechnung, und klicken Sie anschließend auf 1904-DATUMSSYSTEM. Klicken Sie auf OK.
  3. Geben Sie die folgenden Datumsangaben in Blatt1 ein:
          A1: 5.7.96
          A2: 11.5.96
          A3: 28.4.96
  4. Zeigen Sie im Menü EXTRAS auf MAKRO, und klicken Sie auf VISUAL BASIC-EDITOR. Klicken Sie im Menü EINFÜGEN des Visual Basic-Editors auf MODUL.
  5. Geben Sie den folgenden Code im Modulfenster ein:
             Sub DateTest()
                'Datumsvariable dimensionieren
                Dim dDate As Date
                'Kleinstes Datum im Bereich in Variable speichern
                dDate = Application.Min(Worksheets(1).Range("A1:A3"))
                'Gespeichertes Datum anzeigen
                MsgBox "Stored date" & Chr(13) & dDate
                'Auf 1904-Datumssystem überprüfen
                If Application.ThisWorkbook.Date1904 Then
                 '1904-Basisdatum in 1900-Basisdatum konvertieren
                 dDate = DateSerial(Year(dDate) + 4, Month(dDate), Day(dDate) + 1)
                 'Konvertiertes Datum anzeigen
                   MsgBox "Converted date" & Chr(13) & dDate
                Else
                   MsgBox "1904-Datumssystem ist nicht aktiviert"
                End If
             End Sub
  6. Zum Ausführen des Makros zeigen Sie im Menü EXTRAS auf MAKRO. Klicken Sie auf MAKROS. Wählen Sie das Makro DateTest, und klicken Sie auf AUSFÜHREN.
Das erste Dialogfeld erscheint mit dem Datum 27.4.92, das vier Jahre und einen Tag vor dem frühesten Datum im Zellbereich von A1 bis A3 liegt. Im zweiten Dialogfeld wird das korrekte, d.h. "konvertierte" Datum, der 28.4.96, angezeigt.

Status

Microsoft hat bestätigt, dass es sich dabei um ein Problem bei den Microsoft-Produkten handelt, die zu Beginn dieses Artikels aufgeführt sind.

Weitere Informationen

Visual Basic für Applikationen erkennt das 1904-Datumssystem nicht automatisch und konvertiert das Datum daher nicht wie erforderlich. Wenn ein Benutzer das 1904-Datumssystem in Microsoft Excel auswählt und ein Makro ausführt, das ein Datum aus einer Zelle eines Arbeitsblatts liest, kann die Differenz vier Jahre und einen Tag betragen (der zusätzliche Tag steht für das Schaltjahr). Beispielsweise wird für das Datum 1.9.96 im 1904-Datumssystem das Datum 31.8.92 zurückgegeben.

Diese Abweichung der Datumswerte kann in Visual Basic auftreten, wenn Sie das 1904-Datumssystem auswählen und das Makro beim Speichern des Datums die Wert2-Eigenschaft verwendet.

Bitte beachten Sie: Bei diesem Artikel handelt es sich um eine Übersetzung aus dem Englischen. Es ist möglich, dass nachträgliche Änderungen bzw. Ergänzungen im englischen Originalartikel in dieser Übersetzung nicht berücksichtigt sind. Die in diesem Artikel enthaltenen Informationen basieren auf der/den englischsprachigen Produktversion(en). Die Richtigkeit dieser Informationen in Zusammenhang mit anderssprachigen Produktversionen wurde im Rahmen dieser Übersetzung nicht getestet. Microsoft stellt diese Informationen ohne Gewähr für Richtigkeit bzw. Funktionalität zur Verfügung und übernimmt auch keine Gewährleistung bezüglich der Vollständigkeit oder Richtigkeit der Übersetzung.


Die Informationen in diesem Artikel beziehen sich auf:
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Visual Basic for Applications 6.0
Keywords: 
kbprogramming KB213593
Microsoft stellt Ihnen die in der Knowledge Base angebotenen Artikel und Informationen als Service-Leistung zur Verfügung. Microsoft übernimmt keinerlei Gewährleistung dafür, dass die angebotenen Artikel und Informationen auch in Ihrer Einsatzumgebung die erwünschten Ergebnisse erzielen. Die Entscheidung darüber, ob und in welcher Form Sie die angebotenen Artikel und Informationen nutzen, liegt daher allein bei Ihnen. Mit Ausnahme der gesetzlichen Haftung für Vorsatz ist jede Haftung von Microsoft im Zusammenhang mit Ihrer Nutzung dieser Artikel oder Informationen ausgeschlossen.
Freigeben
Weitere Supportoptionen
Microsoft Community-Supportforen
Kontaktieren Sie uns direkt
Zertifizierten Partner finden
Microsoft Store