Anzeige
Archiv - Navigation
836to840
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
836to840
836to840
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Pflichfeld erstellen??

Pflichfeld erstellen?
15.01.2007 12:08:23
Kristijan
Hi,
wie kann mann in Excel einPflichtfeld erstellen....
Habe eine Spalte Datum, und wenn ich einen neuen Vorgang anlegen (d.h. - eine neue Zeile pro Vorgang (Name, Kunde usw.)) Soll genau in dieser Zeile Datum ausgefüllt werden

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Pflichfeld erstellen?
15.01.2007 13:09:16
zaske
Hallo Kristijan,
wann soll den geprüft werden ob die Zelle ausgefüllt ist?
Nach Verlassen der Zeile, beim Speichern, beim Schließen?
Man könnte z.B. eine bedingte Formatierung erstellen.
Spalte A = Name
Spalte C = Datum
bed. Fomatierung:=UND($A1 ungleich "";$C1 ="") dann Muster=rot
Das macht es zwar nicht zum Pflichtfeld, zeigt die Zelle aber rot an, wenn ein Name eingtragen wurde aber kein Datum.
Gruß Frank
AW: Pflichfeld erstellen? - "weiche" Lösung
15.01.2007 15:39:34
Luc:-?
Hallo Kristijan,
mit einer VBA-Ereignisprozedur kann man nach jeder Eingabe den Cursor auf ein "Pflichtfeld" zwingen. Dabei wäre zwischen einer "weichen" und einer "harten" Lösung zu unterscheiden.
Erstere reagiert nur auf Eingaben, letztere auch auf Zellauswahl, d.h., es kann auch keine Zelle ausgewählt wdn, solange ein Datum fehlt. Da ich nicht weiß, ob das deinen Intentionen entspricht, habe ich mich für die "weiche" Lösung entschieden:

Option Explicit
Rem 1.leere Zelle in Datumsspalte als "Pflichtzelle"
'   Autor: LSr\CyWorX - 1Publ: www.herber.de 20070115 = CDate
Private Sub Worksheet_Change(ByVal Target As Range)
Static datZ As Range
Dim i As Long
Const DatumSp As Integer = 1
On Error GoTo ex
Application.EnableEvents = False
If Target.Column = DatumSp Then
Set datZ = Target.Offset(1, 0)
GoSub ds
ElseIf IsEmpty(Cells(Target.Row, DatumSp)) Then
If datZ Is Nothing Then
Set datZ = Cells(Target.Row, DatumSp)
ElseIf Not IsEmpty(datZ) Then
Set datZ = datZ.Offset(1, 0)
ElseIf datZ.Row > Target.Row Then
Set datZ = Cells(Target.Row, DatumSp)
End If
GoSub ds
ElseIf Not IsEmpty(datZ) Then
Set datZ = datZ.Offset(1, 0)
GoSub ds
End If
GoTo ex
ds: Rem UP nächstes Leerdatum suchen
i = 0
While Not IsEmpty(datZ.Offset(i, 0))
i = i + 1
Wend
Set datZ = datZ.Offset(i, 0).Select
Return
ex: Application.EnableEvents = True
End Sub 

Diese Prozedur bitte im VBA-Editor in das (Klassen-)Modul der betroffenen Tabelle einfügen (VBAProject - Tabelle... - Doppelklick und dann ins sich öffnende Leerblatt rechts einkopieren).
Wenn die Plicht-=Datumsspalte nicht Spalte A ist, die Konstante DatumSp entsprechend ändern (lfdNr der betreffd Spalte).
Gruß Luc :-?
Anzeige
AW: Pflichfeld erstellen? - "weiche" Lösung
15.01.2007 23:32:43
Kristijan
Hi Luc,
sorry das ich erst so spät antworte, hat alles prima geklappt. Habt mir echt weitergeholfen. Sorry für die späte Rückmeldung....

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige