PDA

Vollständige Version anzeigen : Kontrollkäs.: durch "Entertaste" =true


olaf H.
18.01.2003, 17:46
Hallo
1. wie heißt die Prozedur, das "beim Klicken" das Kontrollkästchen auf Wahr wird?

2. Wie heißt die Prozedur das beim öffen des Formulares alle Kontrollkästchen auf "fasch" gesetzt werden?


Danke Olaf

Aquarii
18.01.2003, 18:16
Hallo Olaf,

da bei Klick das Häckchen automatisch in das Kontrollkästchen gesetzt wird, gehe ich davon aus, daß du den Haken über einen separaten Button (hier Button1) setzen willst:

zu 1.:

Private Sub Button1_Click()

Me!NameKontrollkästchen = True

End Sub

zu 2:

Hier kommt es auf die Anzahl der Kontrollkästchen an:

Bei wenigen evtl. wie oben,

dh. Me!NameKontrollkästchen1=False
Me!NameKontrollkästchen2=False
Me!Me!NameKontrollkästchen3=False


Bei mehreren bietet es sich an dieses durch geschickte Namensgebung zu vereinfachen:

Hier eine Beispielsfunktion, die durch Aufruf von

fktAllesDeaktivieren NameDesFormulars

bei allen Kontrollkästchen mit der Bezeichnung von bez1 bis bez5 das Häkchen entfernt:


<div><link href="http://www.ms-office-forum.net/forum/externals/codeconv.css" rel="stylesheet"><pre><span class="TOKEN">Function</span> fktAllesDeaktivieren(strFormName <span class="TOKEN">As</span> <span class="TOKEN">String</span>)
<span class="TOKEN">Dim</span> intI <span class="TOKEN">As</span> <span class="TOKEN">Integer</span>
<span class="TOKEN">Dim</span> strName <span class="TOKEN">As</span> String, StrFeld <span class="TOKEN">As</span> <span class="TOKEN">String</span>
&nbsp;
StrFeld = &quot;bez&quot;
<span class="TOKEN">For</span> intI = 1 <span class="TOKEN">To</span> 5
strName = StrFeld &amp; intI
Forms(strFormName)(strName) = <span class="TOKEN">False</span>
<span class="TOKEN">Next</span>
end sub</pre></div>

Das ganze hängst Du an das Formularereignis z.B. "Bei Laden"

olaf H.
18.01.2003, 19:00
@ Aquarii
Danke für Deine Antwort doch
Ich habe eine Tabelle in der eine Ja/Nein Feld vorhanden ist.
In einem Endlos Formular sehe ich zu jedem Datensatz dieses kontrollkästchen.
zu 1. ich möchte duch die enter Taste die einzelnen Kontrollkästchen aktivieren können.
zu 2. ich will das beim öffen des Formulares kein kontrollkästchen mehr aktiv ist.



Danke OLAF

Schefti
19.01.2003, 10:55
Wenn das Kontrollkästchen aktiv ist (den Fokus besitzt) kann man per Leertaste den Wert ändern.

Da sich der Wert für das Kontrollkästchen in einer Tabelle befindet, muss der Tabellenwert aktualisiert werden.

dim rec as recordset
set rec = me.recordsetclone
do while rec.eof
rec.edit
rec.[ja/nein-Feld] = false
rec.update
rec.movenext
loop

oder per SQL:

currentdb.execute "UPDATE Tabellenname SET Feldname=FALSE;"

cu

firstindi
20.01.2003, 23:44
hallo

ich habe für ein ähnliches Problem eine Aktualsierundabfrage erstellt.

Nimm die entspechende Spalte und gib bei Aktualisieren entweder

Null oder1 ein.

Im Formular mußt du beim öffnen diese Abfrage starten lassen und schon hast du alle Kontrollkästchen leer oder abgehakt.

genschman
21.01.2003, 06:39
@Firstindi:
ohne besonders "krümel***" sein zu wollen, aber das ist IMHO nicht so ganz exakt.
Der Begriff "Null" steht für etwas anderes als das, was hier gefragt ist.
Falsch oder False oder 0 sind äquivalent, als Gegenteil dazu dann
Wahr oder True oder -1
Null ist ein nicht definierter Feldinhalt (also auch kein leerer !)

genschman