Office: (Office 2003) Textfelder sperren, wenn anderes Textfeld gefüllt

Helfe beim Thema Textfelder sperren, wenn anderes Textfeld gefüllt in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich habe ein Formular + Unterformular. Zu jeder Kundennummer (im Hauptformular) kann man im Unterformular Daten in Textfeldern... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von User, 31. März 2011.

  1. Textfelder sperren, wenn anderes Textfeld gefüllt


    Hallo zusammen,

    ich habe ein Formular + Unterformular.
    Zu jeder Kundennummer (im Hauptformular) kann man im Unterformular Daten in Textfeldern erfassen. Im Unterformular wird immer nur ein Datensatz eingetragen.

    1. Sobald man im Unterformular ein Textfeld mit Inhalt füllt, dann sollen für diesen Datensatz fünf andere Textfelder deaktiviert werden. Ist das möglich?

    2. Ich möchte im Haupftformular ein Kombinationsfeld zum suchen von Datensätzen erstellen, bei dem allerdings nur die Kundennummern zur Auswahl stehen, zu denen im Unterformular noch kein Datensatz angelegt wurde. Würde das ganze in einem Formular sein, wäre das kein Problem. Nur erfasst man im Unterformular die Daten in einer anderen Tabelle.

    Danke im voraus für eure Unterstützung.
    killepitsch

    :)
     
  2. zu 1) im vor Aktualisieren z.B. so einen Code

    Code:
    Gruß
    Günther
     
    guenther_p, 2. April 2011
    #2
  3. Probier mal folgendes:
    Code:
    Für jedes in Frage kommende Textfeld wird die Sub dann so aufgerufen:
    Code:
    Allerdings sind die leeren Textfelder beim erneuten Aufrufen des Formulars nicht mehr gesperrt. Dafür müßtest Du "Beim Anzeigen" eine Routine ausführen. Außerdem ist zu überlegen, wie bei nachträglichen Änderungen verfahren werden soll.

    Und noch ein Tipp: wenn Du 2 verschiedene, von einander unabhängige Fragen hast, solltest Du 2 Threads eröffnen.

    Edit:
    Diese Konstruktion, nur eines von mehreren Feldern darf beschrieben werden, könnte ein Indiz für einen Fehler im Datenmodell sein.
     
    achtelpetit, 2. April 2011
    #3
  4. Textfelder sperren, wenn anderes Textfeld gefüllt

    zu 2)

    verwende als Datenherkunft für dein Kombinationsfeld eine Abfrage nach folgendem Muster

    Code:
    dabei ist Vater die Tabelle mit den Kundennummern und Kind die Tabelle, die Du über das Unterformular pflegst

    Gruß
    Günther
     
    guenther_p, 2. April 2011
    #4
  5. kleiner Nachtrag zur Frage 2

    im Ereignis "Bei Focuserhalt"

    Code:
    stellt sicher, dass das Kombinationsfeld immer am aktuellsten Stand ist

    Gruß
    Günther
     
    guenther_p, 2. April 2011
    #5
  6. Gruß
    Günther

    Es funktioniert. Nur leider gibt es 2 "Probleme". Beim Aufruf des Formulars sind die Felder nicht gesperrt -> Erst bei der Eingabe in Text0.
    Wenn man die Eingabe getätigt hat und zum nächsten Datensatz geht, dann bleiben die Felder gesperrt.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  7. Für jedes in Frage kommende Textfeld wird die Sub dann so aufgerufen:
    Code:
    Allerdings sind die leeren Textfelder beim erneuten Aufrufen des Formulars nicht mehr gesperrt. Dafür müßtest Du "Beim Anzeigen" eine Routine ausführen. Außerdem ist zu überlegen, wie bei nachträglichen Änderungen verfahren werden soll.

    Es liegt in der Tat ein Fehler im Datenmodell vor, allerdings kann ich das nicht lösen, da ich auf eine täglich bereitgestellte Datenquelle zugreifen muss.

    Wo genau muss ich denn die Codeblöcke einfügen und was muss ich bei dem ersten Code abändern?
    Kennst du auch eine Lösung für nachträgliche Änderungen?

    Von den Lösungen bin ich immer wieder beeindruckt. Werde mich nun mal mit der Lösung zu 2. auseinandersetzen.
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  8. Textfelder sperren, wenn anderes Textfeld gefüllt

    zu Beim Aufruf des Formulars sind die Felder nicht gesperrt

    da hilft Dir sicher das Ereignis "Beim Anzeigen" des Formulars (Form_Current())weiter

    Gruß
    Günther
     
    guenther_p, 2. April 2011
    #8
  9. Zu 2) Funktioniert problemlos! Danke!!

    Zu 1) Hab mit Hilfe von eurem Code bei Google was interessantes gefunden:

    Funktioniert problemlos:
    Code:
    Unterstrichenes klappt nicht. Code:
    Brauche ich das? Wenn ja, wozu? Unterstrichenes klappt nicht.
    Code:
    Ich möchte statt dem extra Kontrollkästchen ein Textfeld abfragen, wenn gefüllt, dann Felder sperren. Geht das? Wisst ihr eine Lösung?
    killepitsch
     
  10. Was möchtest Du denn erreichen?
     
    achtelpetit, 3. April 2011
    #10
  11. Bei der Aktivierung des Kontrollkästchens (besser wenn Textfeld gefüllt) sollen alle Textfelder gesperrt werden (für diesen Datensatz) außer das Kontrollkästchen/Textfeld selbst. Beim Vor-/Zurückspringen zwischen den Datensätzen sollen nicht die Felder aller Datensätze gesperrt sein. Beim Aufruf des Formulars das gleiche.
     
  12. Nachdem ich mit meiner Lösung nicht weiterkomme habe ich mir mal eine andere überlegt. Zudem habe ich das Kontrollkästchen durch ein Textfeld ersetzt.
    Leider sind meine Textfelder immer gesperrt. Was läuft hier falsch?

    Bei diesen Ereignissen habe ich den u. g. Code eingetragen:
    Code:
    Code:
    Ich hoffe ihr versteht was ich damit bezwecken will.

    edit: Das Problem muss hier liegen:
    If (Me!txt_AbfrageTextfeld "" Or IsNull(Me!txt_AbfrageTextfeld)) Then
     
  13. Textfelder sperren, wenn anderes Textfeld gefüllt

    Die Hinweise auf die Lösung hast du in den vorherigen Tipps alle bekommen

    1.) Beitrag 8: Ereignis "Beim Anzeigen" des Formulars

    wird bei jedem Satzwechsel aufgerufen damit hast Du die Möglichkeit die Aktivierung/Deaktivierung der einzelnen Felder vorzunehmen

    2.) Beitrag 3 zeigt Dir wie du durch alle Controls des Formular läufst
    3.) Beitrag 2 zeigt die Behandlung eines einzelnen Controls mit If isnull

    2. und 3. in eine Prozedure ausgelagert und sowohl aus "Beim Anzeigen" als auch "Nach Aktualisieren" aufgerufen entspricht aus meinem Verständnis Deiner Anforderung

    Gruß
    Günther
     
    guenther_p, 4. April 2011
    #13
  14. Auf deutsch: wenn das Feld UNGLEICH Leerstring (also, wenn was drinsteht) oder wenn das Feld NULL ist, dann...

    Irgendwelchem Code kopieren bringt Dir gar nix.
    Ich warte mal ab, bis Du Dein Problem selber verstanden und vollständig beschrieben hast.
     
    achtelpetit, 4. April 2011
    #14
  15. Ich habe es nun so gelöst:
    Code:
    Das gleiche bei dem Ereignis: Private Sub Form_Current()

    Bei ca. 20 Textfelder wird der Code zwar ziehmlich lang, aber es klappt problemlos!
     
Thema:

Textfelder sperren, wenn anderes Textfeld gefüllt

Die Seite wird geladen...
  1. Textfelder sperren, wenn anderes Textfeld gefüllt - Similar Threads - Textfelder sperren Textfeld

  2. Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?

    in Microsoft Excel Hilfe
    Formularsteuerelement Textfeld: Selbe Formatierung wie verlinkte Zelle?: Hallo, ich bin ja gerade dabei ein Bestellformular mit Excel zu realisieren. Das ganze sieht soweit auch schon sehr gut aus und funktioniert weitgehendst. Die Textfelder sind nun alle verlinkt...
  3. Zwischen Textfeldern mit Tabulator Taste wechseln

    in Microsoft Excel Hilfe
    Zwischen Textfeldern mit Tabulator Taste wechseln: Hallo, ich habe mich das erste Mal mit Textfeldern (AktiveX Steuerelement) befasst. Mein Plan ist eine Art Formular zu machen, wo man zu einem Bestellschein Adresse, Lieferadresse, Kundennummer...
  4. Textfeld Powerpoint Ränder

    in Microsoft PowerPoint Hilfe
    Textfeld Powerpoint Ränder: Hallo liebes Forum! Wo kann ich im PPT einstellen, dass die Ränder automatisch immer auf "0" sind, wenn ich ein Textfeld aufziehe. Auf dem Folienmaster sind die Ränderabstände bereits auf "0"...
  5. Inhalt eines Hyperlink Feldes in ein Textfeld kopieren

    in Microsoft Access Hilfe
    Inhalt eines Hyperlink Feldes in ein Textfeld kopieren: Hallo, kurz vorweg, GRUNDkenntnisse sind ein paar vorhanden, VBA-Kenntnisse sind nicht vorhanden. Ich habe eine DB zum verwalten meiner Dokumente. In einem Endlosformular erzeuge ich mit Hilfe...
  6. Textfelder verschieben

    in Microsoft Excel Hilfe
    Textfelder verschieben: Hallo Forum, ich habe zwei Textfelder auf meinem Tabellenblatt (Textfeld 4 und Textfeld 5) in meiner xlsm Excel Datei. Textfeld 4 befindet sich unter Textfeld 5. Diese beiden Textfelder nutze ich,...
  7. Schriftart im Formular

    in Microsoft Access Hilfe
    Schriftart im Formular: Hallo, ich habe folgendes Problem. in einem Formular gibt es ein Textfeld, in dem das Schriftformat auf Microsoft YaHei, Größe 10 und Schriftweite Normal eingestellt ist. Wenn ich einen neuen...
  8. Word 2013 Textfelder sperren / Briefvorlage erstellen

    in Microsoft Word Hilfe
    Word 2013 Textfelder sperren / Briefvorlage erstellen: Hey liebe Office-Gemeinde, ich muss in Word 2013 (Windows) für einen Kunden eine Briefvorlage erstellen. Ich habe das nun wie folgt gelöst: Briefvorlage in InDesign erstellt -> PDF...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden