Datum einmalig einfügen ohne aktualisierung
#1
Hallo Leute,

neues Problem :)

ich möchte gerne einmalig das das Datum auftaucht sobald etwas in der spalte "Was ist zu tun" was drin steht. das für jede Zeile für Zeile. 

das ist was ich herausgefunden habe aber wie ändere ich das auf mein Projekt um?(als VBA Code)

PHP-Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Intersect(TargetRange("B1:B10,I1:I10")) Is Nothing Then Exit Sub
    
If Target.Count 1 Then Exit Sub 'Bearbeiten mehrerer Zeilen wird abgefangen
    If Target = "" Then
        Cells(Target.Row, 1).ClearContents
        Else:
        Cells(Target.Row, 1).Value = Date
    End If
End Sub 

Ich bekomme diesen Code nicht auf meine Exceldatei umgesetzt :(
Danke leute


Angehängte Dateien
.xlsx   übungsdatei4.xlsx (Größe: 40,43 KB / Downloads: 3)
Top
#2
Hallo,

in welcher Spalte soll welches Datum erscheinen?

Exit Sub solltest du wo geht vermeiden, frage nicht ab nach
Code:
If Intersect
sondern
Code:
If Not Intersect
das erspart das Exit Sub
Schöne Grüße
Berni
Top
#3
ja stimmt das datum soll in der spalte "aufgenommen am " erscheinen

Danke im voraus
Top
#4
Meine Güte... WELCHES DATUM???

*Seufz*
Ich gehe einfach mal vom aktuellen Datum aus.
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("G3:G300")) Is Nothing And Target.Count = 1 Then
    If Cells(Target.Row, 4) = "" Then Cells(Target.Row, 4) = Date
End If
End Sub
Schöne Grüße
Berni
Top
#5
Ok ich wusste nicht das es noch nicht so ganz verständlich war sorry.

Der Code ist schon ziemlich gut, da fehlt aber noch das wenn ich den text aus "was ist zu tun?" wieder lösche soll das datum wieder verschwinden.

Leider bin ich zu unerfahren diesen Code alleine hinzubekommen.

Danke für eure Mühe
Top
#6
Gut, du hast jetzt zweimal meine Frage, welches Datum eingefügt werden soll ignoriert. Muss man nicht verstehen, aber von mir aus.
Davon, dass das Datum wieder gelöscht werden soll, wenn der Text gelöscht wird, hattest du nirgendwo etwas erwähnt. Aus diesem Grund ist das nun das letzte Mal, dass du von mir eine Lösung bekommst, denn meine Zeit ist mir zu schade, dass ich fünfmal nachfrage und keine Antwort bekomme und auf Salamitaktik habe ich sowieso keine Lust.
Bis dann.

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Z As Long
Z = Target.Row
If Not Intersect(Target, Range("G3:G300")) Is Nothing And Target.Count = 1 Then
    If Cells(Z, 4) = "" Then
        Cells(Z, 4) = Date
    ElseIf Target = "" Then
        Cells(Z, 4).ClearContents
    End If
End If
End Sub
Schöne Grüße
Berni
Top
#7
Hi,

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("G3:G300")) Is Nothing And Target.Count = 1 Then
        Cells(Target.Row, 4) = IIf(IsEmpty(Target), "", Date)
    End If
End Sub
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Top
#8
@LuckyJoe: Das ist aber nicht dasselbe wie mein Code. Aber so decken wir wenigstens mehrere Möglichkeiten ab, der TE kann ja dann wählen, was ihm genehm ist.
Schöne Grüße
Berni
Top
#9
@MisterBurns: als ich meine Lösung losgeschickt habe, habe ich nicht gesehen, dass du schon geantwortet hattest.
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Top
#10
Kein Problem, wollte nur auf die unterschiedlichen Ausführungen bzw. Ergebnisse hinweisen.
Schöne Grüße
Berni
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste