Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Festes Datum wenn Bedingung erfüllt

Festes Datum wenn Bedingung erfüllt
13.11.2007 13:17:00
erwin.geer
Hallo Experten,
ich habe ein Tabellenbaltt in dem erledigte / unerledigte Arbeit gelistet wird.
1. Spalte: Beginn der Arbeiten (z. B. 01.11.2007)
2. Spalte: Funktion =heute()
3. Spalte: vergangene Zeit wird berechnet (z. B. 12 Tage)
4. Spalte: Anzahl abzuarbeitende Fälle
5. Spalte: erledigte Fälle
6. Spalte: Prozent erledigt durch Formel (erledigte Fälle * 100 / unerledigte Fälle)
Durch die Funktion =heute() weis ich immer, wie viele Tage schon an einem Problem gearbeitet wird
und außerdem, wie hoch der Erledigungsgrad ist.
Wenn jetzt in einer Zeile alle Fälle erledigt sind (Spalte 6), also 100 Prozent erreicht sind, dann soll sich das aktuelle Datum in Spalte 2 nicht mehr aktualisieren.
Wenn es mit einer Funktion nicht gehen sollte, nehme ich jederzeit gerne ein VBA Makro.
Wer kann mir helfen?
Grüße - Erwin

Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Festes Datum wenn Bedingung erfüllt
13.11.2007 13:39:55
Wolli
Hallo Erwin, da hilft nur ein Ereignismakro, das prüft, ob die Zahl der erledigten Fälle (Spalte 5) der Zahl der Gesamtfälle (links daneben) entspricht. Kopierere das Makro in den Code der Tabelle (nicht Modul!)

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 5 Then
If Target = Target.Offset(0, -1) Then
Cells(Target.Row, 2) = Cells(Target.Row, 2).Value
End If
End If
End Sub


Gruß, Wolli

Anzeige
Danke
13.11.2007 14:11:00
erwin.geer
Hallo Wolli,
herzlichen Dank für die schnelle Lösung!
Grüße - Erwin

zusätzliche Frage zum Datum
14.11.2007 07:37:54
erwin.geer
Guten Morgen,
Obwohl das Makro von Wolli gut funktioniert, habe ich festgestellt, dass es praktikabler ist, wenn ich die Daten nicht selbst eingebe sondern sich die Daten automatisch aktualisieren.
Ich habe deshalb jetzt Bezüge zu den Tabellen der Mitarbeiter erstellt, die im Netz liegen; das funzt auch.
Allerdings klappt das Makro nicht mehr, weil keine direkte Eingabe erfolgt.
Wie funktioniert denn das, dass sich aus =heute() ein festes Datum ergibt, wenn keine direkte Eingabe erfolgt, sondern sich in meiner Überischt nur die Bezüge aktualiesieren?
Grüße - Erwin

Anzeige
AW: zusätzliche Frage zum Datum
14.11.2007 09:18:25
Harry
Hallo Erwin,
dann nutzte eine weitere Eriegnisprozedur, welche ausgelöst wird. Da ich nicht weiß, was du nach der Aktualisierung der Mappe darin noch ausführst, wären typische Kandidaten "BeforeSave" oder "BeforeClose" oder "BeforePrint"
Versuche mal (unter "Diese Arbeitsmappe")

Option Explicit
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim lngZaehler As Long
For lngZaehler = 1 To Range("E65536").End(xlUp).Row
If Cells(lngZaehler, 5) = Cells(lngZaehler, 4) Then
Cells(lngZaehler, 2) = Cells(lngZaehler, 2).Value
End If
Next
End Sub


Gruß
Harry

Anzeige
AW: zusätzliche Frage zum Datum
14.11.2007 12:04:25
erwin.geer
Hallo Harry,
wunderbar :)
Grüße - Erwin
;
Anzeige
Anzeige

Infobox / Tutorial

Festes Datum bei erfüllter Bedingung in Excel


Schritt-für-Schritt-Anleitung

Um ein fixes Datum in Excel automatisch einzufügen, wenn eine bestimmte Bedingung erfüllt ist, kannst du ein VBA-Makro verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

  1. Öffne die Excel-Datei, in der du das Datum automatisch einfügen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Finde das Arbeitsblatt, in dem du das Makro anwenden möchtest, und öffne den Code-Editor für dieses Blatt.

  4. Füge den folgenden Code ein:

    Private Sub Worksheet_Change(ByVal Target As Range)
       If Target.Column = 5 Then
           If Target = Target.Offset(0, -1) Then
               Cells(Target.Row, 2) = Cells(Target.Row, 2).Value
           End If
       End If
    End Sub
  5. Schließe den VBA-Editor und kehre zu deiner Excel-Tabelle zurück.

  6. Teste die Funktion, indem du die Anzahl der erledigten Fälle in Spalte 5 aktualisierst. Wenn sie der Gesamtanzahl in Spalte 4 entspricht, sollte das Datum in Spalte 2 fixiert werden.


Häufige Fehler und Lösungen

  • Makro funktioniert nicht: Stelle sicher, dass das Makro im richtigen Arbeitsblatt und nicht in einem allgemeinen Modul gespeichert wurde.
  • Datum wird nicht fixiert: Überprüfe, ob die Bedingungen im Makro korrekt sind. Das Makro funktioniert nur, wenn die Anzahl der erledigten Fälle gleich der Anzahl der Gesamtfälle ist.
  • Excel fragt nach dem Speichern: Wenn du das Fixieren des Datums beim Schließen der Datei wünschst, kannst du ein weiteres Ereignismakro verwenden.

Alternative Methoden

Falls du kein VBA verwenden möchtest, gibt es auch alternative Methoden. Eine Möglichkeit ist die Verwendung der Funktion WENN in Kombination mit einer Zelle, die das Datum speichert. Beispiel:

=WENN(E2=D2;HEUTE();"")

Diese Formel gibt das heutige Datum zurück, wenn die Bedingung erfüllt ist. Beachte jedoch, dass das Datum in diesem Fall nicht statisch ist.


Praktische Beispiele

Ein typisches Szenario könnte wie folgt aussehen:

Beginn Datum Erledigte Fälle Gesamtfälle Prozent erledigt
01.11.2007 =HEUTE() 5 5 =E2/D2*100

Wenn die ersten 5 Fälle erledigt sind, wird das Datum in der zweiten Spalte fixiert.


Tipps für Profis

  • Verwende Workbook_BeforeClose oder Workbook_BeforeSave: Diese Ereignisse sind nützlich, um das Datum zu fixieren, wenn du die Datei speicherst oder schließt.
  • Teste deine Makros regelmäßig: Vermeide Fehler, indem du nach jeder Änderung sicherstellst, dass alles wie gewünscht funktioniert.
  • Nutze Kommentare im VBA-Code: Das hilft dir, den Überblick über die Funktionen und deren Nutzung zu behalten.

FAQ: Häufige Fragen

1. Wie kann ich das Datum automatisch aktualisieren, wenn ich Daten aus einer anderen Quelle beziehe?
Du kannst ein Makro anpassen, das beim Aktualisieren der Daten ausgeführt wird, um das Datum zu fixieren.

2. Ist es möglich, das Datum ohne VBA zu fixieren?
Ja, du kannst die WENN-Funktion verwenden, aber das Datum bleibt nicht statisch, wenn sich die Bedingungen ändern. Ein VBA-Makro ist hier die zuverlässigere Lösung.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige