Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
652to656
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
652to656
652to656
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Meldung, wenn Mussfeld nicht eingetragen wurde

Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 12:03:03
dirtyharry
hallo zusammen,
ich bastle momentan an einer Tabelle herum, wobei in die Spalte A unbedingt etwas eingegeben werden muss. Allerdings nur, wenn in der Spalte D etwas eingegeben wurde.
Daher meine Frage: Wie kann man eine Meldung erscheinen lassen, die den Benutzer darauf aufmerksam macht, dass er in der Spalte A noch etwas einzugeben hat, wenn in der Spalte D etwas eingetragen wurde? bzw. dass der Benutzer gar nicht weiterarbeiten kann, solange er in Spalte A nichts eingegeben hat?
Danke schon jetzt für eure Hilfe,
Harald

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 12:22:24
Matthias
Hallo Harald,
Teste dies mal:
(ins Modul des Tabellenblattes):

Private Sub Worksheet_Change(ByVal Target As Range)
Dim z As Range, ber As Range
Set ber = Intersect(Target, Range("D:D"))
If Not ber Is Nothing Then
For Each z In ber
If z.Value <> "" Then
If Cells(z.Row, 1) = "" Then
Me.ScrollArea = Cells(z.Row, 1).Address
Cells(z.Row, 1).Select
MsgBox "Sie müssen in Spalte A auch was stehen haben!"
End If
End If
Next z
End If
Set ber = Intersect(Target, Range("A:A"))
If Not ber Is Nothing Then
If ber.Value <> "" And Me.ScrollArea <> "" Then
Me.ScrollArea = ""
ber.Offset(1, 3).Select
End If
End If
End Sub

Gruß Matthias
Anzeige
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 12:45:24
dirtyharry
danke für den code, aber da tut sich gar nichts.
Die messagebox erscheint nicht und man kann auch ganz normal weiterarbeiten.
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 12:57:05
Matthias
Hallo Harald,
hast du den Code auch ins Tabellenblattmodul gesetzt?
Gruß Matthias
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:13:01
dirtyharry
ja, direkt zum tabellenblatt, welches betroffen ist.
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:15:33
Eule
Hi Harald, hi Matthias
Code funktioniert 1a und ist genial!
gruss Eule
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:20:28
Matthias
Hallo Eule,
naja, 1b... es kam zum Fehler, wenn die ganze Spalte D gelöscht wird.
Besser:

Private Sub Worksheet_Change(ByVal Target As Range)
Dim z As Range, ber As Range
Set ber = Intersect(Target, Range("D:D"))
If Not ber Is Nothing Then
If ber(1).Value <> "" Then
For Each z In ber
If Cells(z.Row, 1) = "" Then
Me.ScrollArea = Cells(z.Row, 1).Address
Cells(z.Row, 1).Select
MsgBox "Sie müssen in Spalte A auch was stehen haben!"
End If
Next z
End If
End If
Set ber = Intersect(Target, Range("A:A"))
If Not ber Is Nothing Then
If ber.Value <> "" And Me.ScrollArea <> "" Then
Me.ScrollArea = ""
ber.Offset(1, 3).Select
End If
End If
End Sub

GRuß Matthias
Anzeige
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:29:51
Eule
Hi Matthias
so weit habe ich garnicht getestet. Aber wenn wir schon mal dabei sind, Zellen in Spalte A, die bereits gefüllt sind, müssten geschützt/gesperrt werden, damit diese nicht mehr gelöscht werden können (bei bereits erfolgter Befüllung von Spalte D)
Gruss Eule
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:37:39
Matthias
Hallo Eule,
Zellen in Spalte A, die bereits gefüllt sind, müssten geschützt/gesperrt werden, damit diese nicht mehr gelöscht werden können (bei bereits erfolgter Befüllung von Spalte D)
Wer sagt das?
Gruß Matthias
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:40:03
Eule
Hi Matthias
sagt niemand, habe beim Testen dies nur festgestellt, nachdem Du deinen "Schönheitsfehler" festgestellt hast.
Gruss Eule
Anzeige
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 13:43:55
Matthias
Hallo Eule,
achso, jetzt verstehe ich. :-)
Naja, mal schaun, ob Dirty Harry das überhaupt soweit hinkriegt.
Gruß Matthias
EnableEvents, oder was ?
19.08.2005 14:01:40
Harald
Hi Dirty Harry,
im Rahmen von Ereignissen wie z.B. Worksheet_Change wird zu Anfang EnableEvents oftmals auf False gesetzt und bei Codeabbruch nicht wieder auf True.
Das weiß ich aus schmerzlicher Erfahrung, daher hab ich diesen flotten Einzeiler, der mir bei Ereignis-Bastelstunden hilfreich zur Seite steht ;-))

Sub til()
Application.EnableEvents = True
End Sub

Matthias: Schöne Programmierarbeit
Gruß
Harald
Anzeige
AW: Meldung, wenn Mussfeld nicht eingetragen wurde
19.08.2005 14:34:11
dirtyharry
mit der neuen formel funzt es einwandfrei, herzlichen dank an euer bemühen.
zu der von glaub ich eule gestellten frage, zum schutz/zur sperrung von zellen, in denen was eingetragen wurde, empfehle ich folgenden code:

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Dim RaZelle As Range
'    ActiveSheet.Unprotect
For Each RaZelle In Range(Target.Address)
If Not Intersect(RaZelle, Range("D1:D999")) Is Nothing Then
If RaZelle <> "" Then Target.Offset(0, 1).Select
End If
Next RaZelle
'    ActiveSheet.protect
End Sub

also kann man auf die ausgefüllten Zellen im Bereich D1:D999 nicht mehr zugreifen.
danke nochmals und ein schönes wochenende!!!
Harald
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige