Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: jeep_66 am Juni 09, 2011, 18:15:22

Titel: Kontrolle ob Felder ausgefüllt sind
Beitrag von: jeep_66 am Juni 09, 2011, 18:15:22
Hallo,

im Moment stehe ich etwas auf dem Schlauch und weiß nicht wie ich an dieses Problem ran gehen soll auch nicht wie es heißt um zu suchen.

Ich habe in meiner DB verschieden Textfelder, in denen ein Link eingetragen wird. Der kann über ein Button geöffnet werden.
Wenn ein Textfeld leer ist, der Button aber gedrückt wird, kommt die Fehlermeldung.. Laufzeitfehler 94...Unzulässige verwendung von Null.

Logisch-steht auch nichts drin.
Ich würde gerne, neben dem Button eine Art Kontrollkästchen machen, das grün ist wenn in dem Textfeld etwas drin steht.
Habe in der Abfrage versucht mit: KK_PL_Link:wenn[pl_link]>null;1;0)
Dann wollte ich mit Bedingter Formatierung das neue Feld mit den Farben ändern.
Geht leider nicht.

Kann mir da jemand einen Tip geben? Oder wie die Fehlermeldung nicht mehr gemeldet wird.
Vielen Dank
Gruß
Markus
Titel: Re: Kontrolle ob Felder ausgefüllt sind
Beitrag von: Xoar am Juni 09, 2011, 18:28:59
Moin, mir fällt da gerade ne VBA Variante ein.

If   IsNull(Me!DeinSteuerelement) then           'IsNull() überprüft ob der Inhalt Null ist.
    me!grueneskaestchen.visible = false
    me!roteskaestchen.visilble = true
else
   me!roteskaestchen.visilble = false
   me!grueneskaestchen.visible = true
end if


das ganze bei Formular öffnen (Eigenschaftenfenster -> Formular -> Ereignis -> und dann das passende auswählen), oder wann das gemacht werden soll als Procedur einfügen.
Man kann auch die Farbe verändern, nur da fällt mir ausm Stehgreif nicht ein, wie man das macht :)

hab mal nachgeschaut mit
Me!kaestchen.BackColor = 255000  ' <-- macht das grün
Titel: Re: Kontrolle ob Felder ausgefüllt sind
Beitrag von: database am Juni 10, 2011, 20:56:54
Hallo,

du KÖNNTEST aber auch den Button deaktivieren, wenn das Textfeld leer ist.

Im Ereignis 'Beim Anzeigen' des Formulars, dann wirkt der Code auch bei Datensatzwechsel:


If IsNull(Me!DeinTextfeld) Then
    Me!DeinButton.Enabled = False
Else
    Me!DeinButton.Enabled = True
End If


HTH
Titel: Re: Kontrolle ob Felder ausgefüllt sind
Beitrag von: jeep_66 am Juni 10, 2011, 22:13:24
hallo zusammen und vielen Dank für die Antworten.

die Idee mit der deaktivierung finde ich super !
Da kam ich gar nicht drauf  ;)

Ich finde nur nicht, wo ich das Ereignis beim Anzeigen einstellen kann.

Gruß
Markus
Titel: Re: Kontrolle ob Felder ausgefüllt sind
Beitrag von: database am Juni 11, 2011, 09:00:08
Hallo,

Formular in der Entwurfsansicht
Linke oberste Ecke - das kleine schwarze Quadrat anklicken
Formulareigenschaften auswählen
Ereignisse (Registerkarte) auswählen
Den ersten Eintrag 'Beim Anzeigen' auswählen, im DropDown [Ereignisprozedur] auswählen und die drei Punkte daneben anklicken.

Du befindest dich in der Ereignis-Prozedur 'Beim Anzeigen' des Formulars


Private Sub Form_Current()

    If IsNull(Me!DeinTextfeld) Then
        Me!DeinButton.Enabled = False
    Else
        Me!DeinButton.Enabled = True
    End If

End Sub


HTH
Titel: Re: Kontrolle ob Felder ausgefüllt sind
Beitrag von: jeep_66 am Juni 11, 2011, 10:48:06
Hallo Peter,

beim Formular ändern... wer lesen kann ist klar im Vorteil :-)
Habe ich alles gemacht und funktioniert.
Ich finde das sowas von klasse... Vielen Dank
Gruß Markus und allen Schöne Pfingsten