Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
796to800
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
796to800
796to800
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Beim schreiben in Zelle Datum in andere Zelle setz

Beim schreiben in Zelle Datum in andere Zelle setz
02.09.2006 22:37:22
Andreas
Hallo zusammen,
ich weiss mit =heute() kann ich das Datum setzen. Aber wie kann man es anstellen, dass wenn ich zum Beispiel in A1 etwas schreibe, erst dann das Datum in A8 gesetzt wird und dies immer wieder sobald sich ein Wert in der Zelle A1 ändert sprich am nächsten Tag Wertänderung in A1, dann neues Datum in A8.
WENN Funktion oder VBA? Danke für eure Tips
mfG
Andreas

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Beim schreiben in Zelle Datum in andere Zelle
02.09.2006 22:58:23
Josef
Hallo Andreas!
Das geht nur per VBA.
' **********************************************************************
' Modul: Tabelle3 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
  If Target <> "" Then
    Range("A8") = Date
  Else
    Range("A8") = ""
  End If
End If
End Sub


Gruß Sepp

Anzeige
AW: Beim schreiben in Zelle Datum in andere Zelle
02.09.2006 23:45:31
Andreas
Hallo Sepp,
oka das geht soweit. Ich dachte ich könnte das MAkro einfach erweitern wenn es in einer Range passieren muss, aber weit gefehlt.
Die zu prüfenden Zellen erstrecken sich von A12 bis A31, und die wo eingetragen werden soll von G12:G31. Wie kann ich ergänzen?
mfG
Andreas
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 00:29:11
Matthias
Hallo Andreas,
z.B. so:

Private Sub Worksheet_Change(ByVal Target As Range)
Const Watch = "A12:A31"
Dim ber As Range, z As Range
Set ber = Intersect(Target, Range(Watch))
If Not ber Is Nothing Then
For Each z In ber
If z.Value <> "" Then z.Offset(0, 6) = Date
Next z
End If
End Sub

Nicht geklärt ist, wie du auf das Löschen von Zellinhalten reagieren willst. Hier im Code wird dann gar nix gemacht - nix eingetragen, nix gelöscht (in Spalte G).
Gruß Matthias
Anzeige
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 00:43:57
Andreas
Hallo Matthias,
generell wird das Blatt definitiv beschrieben, bleib also nicht lange leer. Wenn dann doch einmal eine Zelle in dem A-Range leer bleiben sollte die schon beschrieben war, dann muss ich oder meine Frau es eben händisch löschen. Wenn man das natürlich in der Prozedur mit einbauen kann, wäre es wohl ein Zuckerl :-). Danke aber für die Lösungshilfe.
mfG
Andreas
PS: Habe versucht drauf zu kommen wo G definiert ist in dem Code, kann j aeigentlich nur die Sequenz If z.Value "" Then z.Offset(0, 6) = Date sein. Aber 6 Spalten gehen nur bis F. Wie wird das gezählt?
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 01:16:07
Matthias
Hallo Andreas,
von A 6x nach rechts gibt G...

Private Sub Worksheet_Change(ByVal Target As Range)
Const Watch = "A12:A31"
Dim ber As Range, z As Range
Set ber = Intersect(Target, Range(Watch))
If Not ber Is Nothing Then
For Each z In ber
If z.Value <> "" Then
z.Offset(0, 6) = Date
Else
z.Offset(0, 6) = ""
End If
Next z
End If
End Sub

Gruß Matthias
Anzeige
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 11:34:19
Andreas
Hallo Matthias,
es geht. Danke für die Ergänzung und Erklärung.
Gruß Andreas
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 08:50:39
Josef
Hallo Andreas!
Dann so.
' **********************************************************************
' Modul: Tabelle1 Typ: Element der Mappe(Sheet, Workbook, ...)
' **********************************************************************

Option Explicit

Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range
On Error GoTo ErrExit
If Not Intersect(Target, Range("A12:A31")) Is Nothing Then
  Application.EnableEvents = False
  If Target.Count = 1 Then
    If Target <> "" Then
      Target.Offset(0, 6) = Date
    Else
      Target.Offset(0, 6) = ""
    End If
  Else
    For Each rng In Target
      If Not Intersect(rng, Range("A12:A31")) Is Nothing Then
        If rng <> "" Then
          rng.Offset(0, 6) = Date
        Else
          rng.Offset(0, 6) = ""
        End If
      End If
    Next
  End If
End If
ErrExit:
Application.EnableEvents = True
End Sub


Gruß Sepp

Anzeige
AW: Beim schreiben in Zelle Datum in andere Zelle
03.09.2006 11:33:34
Andreas
Hallo Sepp,
hab jetzt 2 Varianten bekommen. Beide machen das was sie sollen. Danke für eure Mühe.
Gruß Andreas

314 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige