Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
472to476
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
472to476
472to476
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

MUSS Felder in Formular

MUSS Felder in Formular
26.08.2004 08:52:11
MO
Morgen allerseits,
hab ein kleines Problem mit einem Formular in Excel - gibt es eine Formel oder Funktion, mit der man die User zwingen kann bestimmte Felder unbedingt auszufüllen um weiterzumachen, wie z.B. Felder mit Name, Funktion etc.
Dass man z.B. nur dann das nächste Sheet öffnen kann wenn diese Felder ausgefüllt sind, oder ähnliche Hinweise dann?!?!?
Bin für jeden Ansatz dankbar.
Gruß,
MO

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: MUSS Felder in Formular
26.08.2004 10:26:32
ANdreas
Hallo,
mit Makros gehts in etwa so:

Private Function AusgefuelltFormular() As Boolean
Dim blnAusgefuellt As Boolean
blnAusgefuellt = True
With Worksheets("Formular")
If .Range("B2") = "" Then blnAusgefuellt = False
If .TextBox1.Text = "" Then blnAusgefuellt = False
End With
AusgefuelltFormular = blnAusgefuellt
End Function


Private Sub Workbook_SheetDeactivate(ByVal sh As Object)
If sh.Name = "Formular" Then
If Not AusgefuelltFormular Then
sh.Activate
MsgBox "Bitte erst Formular ausfüllen!"
End If
End If
End Sub

Code einfach ins Klassenmodul "DieseArbeitsmappe" eintragen und Namen des Formular Worksheets ändern und in der Function die Zellen bzw. Formularshapes abfragen wie ich es beispielhaft mit Zelle B2 und dem Textfeld1 gemacht habe.
Gruß
Andreas
Anzeige
AW: MUSS Felder in Formular
MO
Hi vielen Dank schonmal,
irgendwie erkennt er allerdings am Anfang das Makro nicht!? Versteh VBA leider nicht wirklich daher die blöde Frage :)
DANKE
AW: MUSS Felder in Formular
26.08.2004 12:25:34
ANdreas
Hallo,
ich vergaß, die

Function in ein Standardmodul als Public dann:

Function AusgefuelltFormular() As Boolean
Dim blnAusgefuellt As Boolean
blnAusgefuellt = True
With Worksheets("Formular")
If .Range("B2") = "" Then blnAusgefuellt = False
If .TextBox1.Text = "" Then blnAusgefuellt = False
End With
AusgefuelltFormular = blnAusgefuellt
End Function

Das andere wie bisher im Klassenmodul "DieseArbeitsmappe". Das wird dann automatisch ausgeführt, sobald man innerhalb der Datei zw. Tabellenblättern wechselt.
Versucht man das "Formular" zu verlassen, wird mit der

Function geprüft ob die einzelnen Felder alle gefüllt sind. Wenn nicht, wird wieder zurück zum Formular gesprungen. Das funktioniert dann natürlich nur wenn Makros aktiviert sind.
Gruß
Andreas

Anzeige
AW: MUSS Felder in Formular
Mo
Hab die Version jetzt in ein Modul kopiert und den Rest in "Diese Arbeitsmappe", tut aber leider noch nichts, obwohl die Makros aktiviert sind?
Hab glaub ich was entscheidendes vergessen :)
Muss ich das als Makro bearbeiten oder einfach nur so das VB starten?
AW: MUSS Felder in Formular
26.08.2004 15:05:04
ANdreas
Hallo,
wenn Du das Makro nicht an Dein Blatt anpasst, dann passiert auch nichts. Du musst wie gesagt, "Formular" im Makro durch den Tabellenblattnamen Deines Formularblattes ersetzen. Außerdem musst Du in der Funktion alle Textfelder/Zelle u.ä. abfragen ob ein Wert eingetragen wurde - so wie ich es exemplarisch für Zelle B2 und TextBox1 getan habe.
Gruß
Andreas
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige