Forums Neueste Beiträge
 

Wert einer ungebundenen Checkbox

12/12/2009 - 01:06 von Lupus Goebel | Report spam
Hallöschen,

mag sein das es an der Uhrzeit liegt, aber ich suche nach einer
schnelleren möglichkeit.

Auf einem Formular sind 20 ungebundene Checkboxen (ursprünglich waren es
4) und diese müssen True oder False als wert haben, wenn bestimmte
Artikel vorhanden sind oder eben nicht.

Bisher habe ich das so gelöst (weil es erst nur 4 waren):
\\\
Private Sub Form_Current()
strArtNr = "9002"
If DCount("ArtikelNr", "tbl_ArtikelEvent",
"IDEventKalenderTage=" & strIDEventTage & " and
[ArtikelNr] = " & strArtNr & "") > 0 Then
Me.cbH2o = True
Else
Me.cbH2o = False
End If

strArtNr = "6001"
If DCount("ArtikelNr", "tbl_ArtikelEvent",
"IDEventKalenderTage=" & strIDEventTage & " and
[ArtikelNr] = " & strArtNr & "") > 0 Then
Me.cbH2obig = True
Else
Me.cbH2obig = False
End If
.
...
..
end sub
///

Die Liste der Artikel befinden sich als Unterformular in dem Formular
mit den Checkboxen.

Die Artikel-Nr. für die unterschiedlichen Checkboxen sind fest definiert
(wie man sehen kann).


Jemand eine Idee wie ich das besser lösen kann?

Alles unter Access 2003

MfG - Lupus Goebel
Der Sumpf- Morasthobbybastler und Anfaenger mit
Wissensdurst (http://www.lupusdw.de http://foto.lupusdw.de)
Urlaub macht man in Irland: http://www.eaglesnest-bb.com/
 

Lesen sie die antworten

#1 Thomas Möller
12/12/2009 - 08:51 | Warnen spam
Hallo Lupus,

Lupus Goebel schrieb:
mag sein das es an der Uhrzeit liegt, aber ich suche nach einer
schnelleren möglichkeit.

Auf einem Formular sind 20 ungebundene Checkboxen (ursprünglich waren es
4) und diese müssen True oder False als wert haben, wenn bestimmte
Artikel vorhanden sind oder eben nicht.



die einfachste Möglichkeit wàre natürlich die Checkboxen gebunden zu
machen. ;-)


Bisher habe ich das so gelöst (weil es erst nur 4 waren):
\\\
Private Sub Form_Current()
strArtNr = "9002"
If DCount("ArtikelNr", "tbl_ArtikelEvent",
"IDEventKalenderTage=" & strIDEventTage & " and
[ArtikelNr] = " & strArtNr & "") > 0 Then
Me.cbH2o = True
Else
Me.cbH2o = False
End If

strArtNr = "6001"
If DCount("ArtikelNr", "tbl_ArtikelEvent",
"IDEventKalenderTage=" & strIDEventTage & " and
[ArtikelNr] = " & strArtNr & "") > 0 Then
Me.cbH2obig = True
Else
Me.cbH2obig = False
End If
..

...
end sub
///

Die Liste der Artikel befinden sich als Unterformular in dem Formular
mit den Checkboxen.

Die Artikel-Nr. für die unterschiedlichen Checkboxen sind fest definiert
(wie man sehen kann).



Du erstellst Dir eine Abfrage. In dieser Abfrage làsst Du Dir für alle
Artikel die Anzahl berechnen.
Als nàchstes ànderst Du die Namen der Checkboxen so das sie einen
direkten Bezug zur ArtikelNr haben, z.B. "cb9002" und "cb6001".

Im VBA-Code öffnest Du jetzt ein Recordset auf die eben erstellte
Abfrage. Dieses Recordset durchlàufst Du und setzt dabei jeweils den für
die Checkbox. Dabei verwendest Du Code gemàß diesem Muster:
www.donkarl.com?FAQ6.5
(Link in einer Zeile)

Der Vorteil dieser Lösung ist weniger Code und die leichte
Erweiterbarkeit. Wenn eine weitere Checkbox hinzukommt brauchst Du am
Code nichts zu àndern sondern nur die Checkbox entsprechend zu benennen.


HTH
Thomas

Homepage: www.Team-Moeller.de

Ähnliche fragen