PDA

Vollständige Version anzeigen : Formular sperren/entsperren


A3XX
23.03.2004, 15:48
Hi

Nun noch eine Frage...Ich möchte von einem Formular 2 Versionen haben, 1 gesperrte und eine editierbare. Also bisher hatte ich dafür 2 Formulare ich möchte jetzt aber nur noch eines. Das ist soi ziemlich dasselbe w-ie mit dem Report, nur möchte ich jetzt in dem gesperrten Formular alle Felder enable = false und locked = yes machen. Wie kann ich alle diese Felder und Unterformulare ansprechen ohne jedes einzeln aufzuführen? Die Fallunterscheidung, also welche Version jetzt gestartet werden soll, ist mir schon klar, eben, dasselbe wie vorher :)

Arne Dieckmann
23.03.2004, 16:49
Themen wurden geteilt, da es ein komplett neues Problem ist (obiger Beitrag stammt aus http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=122614).


Zum Problem: Langt Dir nicht Me.AllowEdits=True ?

A3XX
24.03.2004, 06:51
Ich probiers mal aus, hab das vorher noch nicht gekannt

Und sorry, dass ich nicht gleich ein Them machte, aber dachte das passe noch dazu.

A3XX
24.03.2004, 06:54
Habs ausprobiert, was mir nich ganz gefällt ist, dass man in die Felder hineinklicken kann, kann man das auch noch irgendwie verhindern? Eben dass sie den Status locked haben und enabled =false?

CptChaos
24.03.2004, 07:01
Geht IMO nur durch sperren der jeweiligen Felder.

Arne Dieckmann
24.03.2004, 08:05
Du kannst alle Steuerelemente mittels Schleife durchlaufen und entsprechend aktivieren/deaktivieren:

Am einfachsten ist es, wenn Du den zu behandelnden Textfeldern etc. eine Marke (Eigenschaften/Andere) verpasst. Diese Eigenschaft spricht man dann per "Tag" an:

Dim ctl As Control
Dim Gesperrt as Boolean

Gesperrt = True

For Each ctl In Me.Controls
If ctl.Tag = "xyz" Then
ctl.Locked = Gesperrt
ctl.Enabled = Not Gesperrt
end if
Next ctl

S. dazu auch FAQ 6.5

TommyK
24.03.2004, 08:30
Hallo,

dazu das Bsp im Code-Archiv Manipulation von Controls in Formularen (http://www.ms-office-forum.net/forum/showthread.php?s=&threadid=120256)