Supportnet Computer
Planet of Tech

Supportnet / Forum / Datenbanken

Access - Sichtbarkeit in Formularen





Frage

Hallo ich bis mal wieder, kann ich in einem Formular ein Textfeld nur anzeigen lassen wenn etwas drin steht? Ich habe Felder die nicht unbedingt befüllt sind, und wenn aber nix drinsteht will ich auhc nicht das sie angezeigt werden. Geht das? oder ist das Wunschdenken? Danke schon im Vorraus cremecarameleis

Antwort 1 von Risatara2

Hi,
Wenn du VBA kannst geht das. Wenn nicht hier die Schritte:
Du gehst in das Formular, in die Entwurfsansicht. Dort machst du einen Doppelklick in die Linke obere Ecke, wo sich die beiden Lineale schneiden, so dass das Eigenschaftsfenster auf geht.
In den Eigenschaften gehst du auf Ereignis (der Reiter oben in dem Fenster), und machst einen Doppelklick in das Feld hinter "Beim Anzeigen". Da sollte dann "[Ereignissprozedur]" stehen. Dann sollte auch hinter dem Feld ein Button mit "..." stehen, auf den klickst du, und der VBA-Editor geht auf.
Dort bist du dann in einer Sub, also zwischen den beiden Texten "Sub Form_Current()" und "End Sub". Hier gibst du jetzt ein:

If isnull(Me.DeinFeldNameHier) then Me.DeinFeldNameHier.Visible = false else Me.DeinFeldNameHier.Visible = true

Ich kann es leider nicht ausprobieren, darum bin ich mir nicht 100% sicher. Auf jeden Fall Sicherheitskopie machen.

Risatara

Antwort 2 von cremecarameleis

Hallo,

Habs ausprobiert und es sagt mir aber Fehler beim Kompilieren: Else ohne If
?????

cremecarameleis

Antwort 3 von Roadrunner90

Hi,

da fehlt nur noch ein endif

Gruß Rudolf

Antwort 4 von erik

oder die Kurzfassung:

With Me.MeinFeld
.Visible = Not IsNull(.Value)
End With

Antwort 5 von cremecarameleis

Hi Roadrunner,

An das endif hab ich gedacht. Und es schmeißt mit trotzdem den Fehler.

Gruß cremecarameleis

Antwort 6 von Risatara2

Da fehlt kein End If, sondern das ganze ist in einer Zeile.

Antwort 7 von cremecarameleis

Cool, jetzt funktionierts. Wenn ich jetzt mehrere Anweisungen hintereinander machen möchte, brauch ich dann das end if?

Gruß cremecarameleis

Antwort 8 von Risatara2

Kommt darauf an, wie du das meinst: Wenn du sagst ich habe in Feld 1 keinen Wert, deshalb sollen die Felder 2, 3 und 4 ausgeblendet werden, würdest du das ungefähr so schreiben:

if isnull(me.feld1)
  then
    me.feld2.visible=false
    me.feld3.visible=false
    ...
  else
    me.feld2.visible=true
    me.feld3.visible=true
    ...
  end if


Wenn du aber sagst, wenn Feld 1 leer ist, soll es nicht angezeigt werden, und wenn Feld 2 leer ist soll es nicht angezeigt werden schreibst du:

  if isnull(me.feld1) then me.feld1.visible=false else me.feld1.visible=true
  if isnull(me.feld2) then me.feld2.visible=false else me.feld2.visible=true
...


Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: