Tach ProfiLeutz!
folgenes Problem
auf meinem Formular habe ich ein (am Tabelle direkt gebundene) Optionsfeld. (Radioknöpfe-form)
um einfach erklären um z.B. Lieferbestand kontrollieren mit folgendem Auswahl -möglichkeiten:
Nein, nicht vorhanden (beim neuen Datensatz sollte auch standardmäßig Ausgewählt sein) und
Ja, vorhanden
Beim Auswahl auf Ja, Vorhanden wird dabei noch ein Textfeld (eingebunden) sichtbar, im welchen ich Liefer-Stückzahl eingeben kann.
dafür hab einfach...
Private Sub Leferung_Click()
Select Case Lieferung
Case 1
Me.txt_AnzahlBeschriftung.Visible = False
Me.f_AnzahlTextfeld.Visible = False
Case 2
Me.txt_AnzahlBeschriftung.Visible = True
Me.f_AnzahlTextfeld.Visible = True
End Select
End Sub
...genommen.
Jetzt meine Frage:
Falls jemand "sagt" ja sind vorhanden und im erschienen Textfeld sie Stückzahl eingibt
und dann doch zurückstellt auf nein, ist nicht im Lieferung erhalten...
Ist es möglich bei -rückstellen, ob die bereits eingegebene Informationen automatisch gelöscht werden?
danke im Voraus Crow
Hallo,
sollte eigentlich ohne große Probleme realisierbar sein.
Das Textfeld für die Stückzahl ist ein gebundenes Formularfeld.
Private Sub Leferung_Click()
Select Case Lieferung
Case 1
Me!f_AnzahlTextfeld = 0 'bzw. wenn kein Standardwert für das Feld angegeben wurde ... Me!f_AnzahlTextfeld = ""
Me.txt_AnzahlBeschriftung.Visible = False
Me.f_AnzahlTextfeld.Visible = False
Case 2
Me.txt_AnzahlBeschriftung.Visible = True
Me.f_AnzahlTextfeld.Visible = True
End Select
End Sub
Dadurch sollte dann das Textfeld im Fall von 'nein' entleert werden - wobei auch das Tabellenfeld entleert bzw. auf 0 gesetzt wird.
HTH
p.s. Sub Leferung und Case Lieferung stimmen nicht überein!
Zitat von: database am Juli 26, 2011, 16:01:28
p.s. Sub Leferung und Case Lieferung stimmen nicht überein!
ah joa war nur hier von Hand schnell eingepasst um Gedanken schnell darstellen können.
Klappt wunderbar.
Setze back, Anzahl wird genullt, Textbox verschwindet wider aber...
komischer weise nach Formular "restart" (usgewählte wert ist wie es war stecken)
aber Textbox ist als True, also nicht wie es sein sollte oder vor d. Schließung war. O_o?
woran kann das liegen?
Hallo,
Du musst im Ereignis 'Beim Anzeigen' des Formulars auf die Einstellungen der Optionsschalter ebenfalls reagieren.
Das heißt, da die Optionsgruppe ja auch an die Tabelle gebunden ist (was in der Regel ja so sein sollte),
werden die Werte - also 'ja' oder 'nein' bei einem Datensatzwechsel in der Optionsgruppe dargestellt.
Im Ereignis 'Beim Anzeigen (Form_Current) muss dann auf diese Werte reagiert werden.
Private Sub Form_Current()
Select Case Lieferung
Case 1
Me!f_AnzahlTextfeld=""
Me.txt_AnzahlBeschriftung.Visible = False
Me.f_AnzahlTextfeld.Visible = False
Case 2
Me.txt_AnzahlBeschriftung.Visible = True
Me.f_AnzahlTextfeld.Visible = True
End Select
End Sub
Somit sollte auch ein 'Restart' des Formulars (schließen und wieder öffnen) die korrekten Werte anzeigen.
Ebenso werden die richtigen Werte angezeigt, wenn du durch die Datensätze blätterst.
Wenn alle Elemente an die Tabelle gebunden sind, kann es eigentlich nicht sein dass 'alte' geänderte Werte in einem Feld angezeigt werden.
Einträge in ein Tabellenfeld werden beim Verlassen des Datensatzes automatisch gespeichert - daher kann das eigentlich nicht sein.
Cool erklärt :)
Als Form_Current() iwie kollidiert mir das ganze.
Die Textfelder beim umschalten "kommen" nicht,
oder wen die schon da sind und zurückgeschaltet/genullt werden sollten, Verschwinden wider nicht.
Problem ist hab zZt. 2 solche (eingebundene) Optionsfelder auf dem selben Formular.
Hier noch mall mein jetzige 1:1 d.Code
Private Sub Form_Current()
Select Case Datentraeger
Case 1
Me!f_DatentraegerAnzahl = 0
Me.txt_DatentraegerAnzahl.Visible = False
Me.f_DatentraegerAnzahl.Visible = False
Case 2
Me.txt_DatentraegerAnzahl.Visible = True
Me.f_DatentraegerAnzahl.Visible = True
End Select
Select Case Kabeln
Case 1
Me!f_KabelnAnzahl = 0
Me.txt_KabelnAnzahl.Visible = False
Me.f_KabelnAnzahl.Visible = False
Case 2
Me.txt_KabelnAnzahl.Visible = True
Me.f_KabelnAnzahl.Visible = True
End Select
End Sub
f_... =TextfeldName
txt_... =TextBeschriftung
Hallo,
nochmal das Ganze, mit vermuteten(!) Feldnamen:
Private Sub Datentraeger_Afterupdate() '"Datentraeger" ist der Name des Optionsrahmens (Optionsgruppe)
Select Case Me!Datentraeger
Case 1
Me!f_DatentraegerAnzahl = 0
Me!txt_DatentraegerAnzahl.Visible = False 'überflüssig, falls das Bezeichnungsfeld zu "seinem" Textfeld "gehört"
Me!f_DatentraegerAnzahl.Visible = False
Case 2
Me!txt_DatentraegerAnzahl.Visible = True 'dito wie oben
Me!f_DatentraegerAnzahl.Visible = True
End Select
End Sub
Private Sub Kabeln_Afterupdate() '"Kabeln" ist der Name des Optionsrahmens (Optionsgruppe)
Select Case Me!Kabeln
Case 1
Me!f_KabelnAnzahl = 0
Me!txt_KabelnAnzahl.Visible = False 'dito, wie oben
Me!f_KabelnAnzahl.Visible = False
Case 2
Me!txt_KabelnAnzahl.Visible = True 'dito, wie oben
Me!f_KabelnAnzahl.Visible = True
End Select
End Sub
Sub Form_Current()
Datentraeger_Afterupdate
Kabeln_Afterupdate
End Sub
aaaah...
jetz sehe ich das licht ^^
stimmt ist überflüssig, ist aber auch wegen Positionierung besser zu anpassen.
so oder so, auf jeden Fall BIGthx wider, am euch beiden!
Gruß aus Bremen Crow