Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1196to1200
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
Inhaltsverzeichnis

Datum von Heute mit CDate(Now)

Datum von Heute mit CDate(Now)
Heute
Hallo Leute
Ich möchte,wenn in Spalte E oder F ein "x" eingetragen wird,das in Spalte A das Datum von heute eingetragen wird,und in Spalte B die aktuelle Uhrzeit.
Angefangen sollte ab Zelle 5 werden bis zum Schluß der Exeltabelle.
Dabei sollte es egal sein ob "x" klein oder groß geschrieben wird.
Eine Deluxe Lösung wäre,wenn schon ein "x" in E oder F eingetragen wurde,und dies im nachhinein gelöscht wird. MsgBox"Soll das "x" gelöscht werden.
Komme dabei nicht klar.
Könnte mir bitte dabei bitte jemand weiterhelfen ?
Danke Heinz
Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Sheets("Sortierrapport").Range("A5:A5000").FormulaR1C1 = "=IF(OR(RC[4]=""x"",RC[5]=""x""), NOW( _
),"""")"
End Sub

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datum von Heute mit CDate(Now)
25.01.2011 18:45:07
Heute
Hallo Heinz,
so ad hoc würde ich ein Makro an das Tabellenblatt heften, das ausgeführt wird, wenn das Blatt activiert wird:
Private Sub Worksheet_Activate()
For zeile = 5 To Rows.Count
If Cells(zeile, 5) = "X" Or Cells(zeile, 6) = "X" Or _
Cells(zeile, 5) = "x" Or Cells(zeile, 6) = "x" Then
Range("A" & zeile) = Format(Int(Now()), "dd.mm.yyyy")
Range("B" & zeile) = Format(Now() - Int(Now()), "hh:mm")
End If
Next
End Sub
Ich denke, das sollte die Standard-Ausführung (also nicht Deluxe) sein.
good luck
praetorius
PS: Für die Deluxe-Version lass ich die Frage mal offen.
Anzeige
AW: Datum von Heute mit CDate(Now)
25.01.2011 18:50:56
Heute
Hallo Heinz,
kopiere den Code ins Modul der Tabelle:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ErrExit
If Not Intersect(Target, Range("E5:F" & Rows.Count)) Is Nothing Then
Application.EnableEvents = False
If UCase(Target(1)) = "X" Then
Cells(Target.Row, 1) = Date
Cells(Target.Row, 2) = Format(Now, "hh:mm:ss")
ElseIf Target(1) = "" Then
If MsgBox("Soll das 'X' gelöscht werden ?", vbYesNo + vbExclamation, "Löschen X") =  _
vbYes Then
Target = "": Cells(Target.Row, 1) = "": Cells(Target.Row, 2) = ""
Else
Application.Undo
End If
End If
End If
ErrExit:
Application.EnableEvents = True
End Sub

Grüße
Steffen
Anzeige
AW: Danke
26.01.2011 10:16:36
Heinz
Danke an Praetorius & Steffen
Ich möchte mich recht herzlich für Eure Exellente Hilfe bedanken.
Echt S U P E R !!
Nochmals Danke
Heinz
AW: Noch eine kleine Verbesserung
27.01.2011 12:56:27
Heinz
Hallo Praetorius & Steffen
Der Code funktioniert Super
Nur bin ich draufgekommen das zum Beispiel 2 "x" in E7 & F7 nicht sein dürfen.
Entweder in Zelle E7 oder in F7.
Könntet ihr mir dazu bitte nochmals weiterhelfen?
Gruß
Heinz
Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo ErrExit
If Not Intersect(Target, Range("E5:F" & Rows.Count)) Is Nothing Then
Application.EnableEvents = False
If UCase(Target(1)) = "X" Then
Cells(Target.Row, 1) = Date
Cells(Target.Row, 2) = Format(Now, "hh:mm:ss")
ElseIf Target(1) = "" Then
If MsgBox("Soll das 'X' gelöscht werden ?", vbYesNo + vbExclamation, "Löschen X") =  _
vbYes Then
Target = "": Cells(Target.Row, 1) = "": Cells(Target.Row, 2) = ""
Else
Application.Undo
End If
End If
End If
ErrExit:
Application.EnableEvents = True
End Sub

Anzeige
AW: Noch eine kleine Verbesserung
27.01.2011 12:57:15
Heinz
Habe vergessen auf offen zu stellen.
Heinz
AW: Noch eine kleine Verbesserung
29.01.2011 01:11:02
praetorius
Hallo Heinz,
tut mir leid, dass ich jetzt erst hier reinschaue, aber lass mal sehen.
Ich kann mir eine Lösung vorstellen, die verhindert, dass ein zweites x (in die Nachbarzelle) eingetragen wird. Aber was soll denn passieren, wenn nun schon in z.B. E7 und F7 je ein x eingetragen ist? Welches soll dann weg?
praetorius
AW: Noch eine kleine Verbesserung
29.01.2011 08:17:48
Heinz
Hallo praetorius
tut mir leid, dass ich jetzt erst hier reinschaue
Du musst dich absolut nicht bei mir Entschuldigen.
ICH möchte etwas von dir.
Wäre es möglich eventuell eine MsgBox aufscheinen zu lassen.
So ungefähr: Wenn schon ein Kreuz in Spalte E eingetragen wurde, und nun ein "x" in Spalte "F" hinzukommt
"Hallo in "A" wurde schon eingetragen".Soll es so bleiben ?
Wenn Ja dann das "x" in "F" eintragen und in "E" löschen.
Und umgekehrt.
Danke & Gruß
Heinz

Die Datei https://www.herber.de/bbs/user/73300.xls wurde aus Datenschutzgründen gelöscht


Anzeige
AW: Noch eine kleine Verbesserung
31.01.2011 11:29:04
praetorius
Hallo Heinz,
https://www.herber.de/bbs/user/73326.xls
damit sollte es so laufen, wie du es dir vorgestellt hast. Im Modul LOT_hinzufügen habe ich noch eine kleine Änderung vorgenommen:
Falls die Werte in N2, O2 oder P2 fehlen sollten, kann der Benutzer sie jetzt in die erscheinende InputBox eintragen und muss nicht mehr zu der entsprechenden Zelle gehen.
Schau es dir mal an; Rückmeldung wäre nett.
good luck
praetorius
AW: Noch eine kleine Verbesserung
31.01.2011 19:10:23
Heinz
Hallo praetorius
Du bist einfach P E R F E C T !!
Echt geil !!!
Ich danke dir recht herzlich
Gruß
Heinz
Anzeige

306 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige