Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Kontrollkästchen in Formular
Gehe zu Seite 1, 2  Weiter
zurück: SELECT-Statement im Textfeld eintragen weiter: Textfelder automatisch vervollständigen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Antwort Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
TZ.
Office-Beginner


Verfasst am:
22. Okt 2009, 09:59
Rufname:

Kontrollkästchen in Formular - Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Liebe Access-Freunde,

von einem FormularA aus rufe ich ein kleines FormularX auf. Das ist einfach mit
Code:
    DoCmd.OpenForm "FormularX"
geschehen.

Nun soll in diesem kleinen FormularX einfach ein Kontrollkästchen, also ein Ja/Nein-Feld, angebracht sein (Feldname: "KK"), dass es dem Anwender erlaubt auf eine Frage mit Ja (Kontrollkästchen klicken) oder Nein (es unberührt lassen) zu antworten. Es ist dann noch ein Ok-und-Schließen-Button angebracht, der das Formular wieder schließen soll.

Wie realisiere ich das, damit die Information (Ja oder Nein), in das Feld KK der entsprechenden Tabelle (beim Schließen des FormularX oder zuvor) gespeichert wird?

Lieben Gruß
Thomas
JoachimG
Accessverdreher


Verfasst am:
22. Okt 2009, 10:03
Rufname:
Wohnort: Hamburg


AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo Thomas,
warum gibst Du nicht als Datenherkunft Deines FormularX die entsprechende Tabelle an?

_________________
Feedback ist toll Very Happy
Gruß Joachim
TZ.
Office-Beginner


Verfasst am:
22. Okt 2009, 11:19
Rufname:

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo Joachim,
doch, die Datenherkuft ist mit der entsprechenden Tabelle versehen, in der das Feld KK (Kontrollkästchen) liegt. Die Tabelle heißt "V".

Was mir Schwierigkeiten macht ist der VBA-Code dafür den aktuellen Datensatz anzusteuern und dort dann - nach betätigen von Ok-und-schließen des Formulars - den Wert, den der Anwender eingegeben hat (Ja bei Klicken, Nein bei Nicht-Klicken) in die Tabelle "V" zu schreiben. - Mit welchem Ereignis verknüpfe ich den VBA-Code damit dies geschehen kann? (beimAnzeigen? VorAktualisierung? VorEingabe? NachEingabe?).


Zuletzt bearbeitet von TZ. am 22. Okt 2009, 11:24, insgesamt einmal bearbeitet
KlausMz
Moderator Access


Verfasst am:
22. Okt 2009, 11:24
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo,
wenn das KK im Formular auch an das Tabellenfeld gebunden ist, geht das doch automatisch.
Wo ist denn noch das Problem?

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
TZ.
Office-Beginner


Verfasst am:
22. Okt 2009, 11:53
Rufname:


AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo,

als Steuerelementinhalt für das Kontrollkästchen im Formular ist der Name des Feldes angegeben, das KK im Formular ist also an das Tabellenfeld gebunden.

Das Problem ist, dass der Datensatzanzeiger stets nur auf den ersten Datensatz des Feldes KK zeigt, wenn das Formular aufgerufen wird. Es sollte aber auf den aktuellen Datensatz springen.
KlausMz
Moderator Access


Verfasst am:
22. Okt 2009, 12:07
Rufname:
Wohnort: Irgendwo in der Pfalz

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo,
dann musst Du beim Aufruf des 2.Formulars den Primärschlüssel übergeben.
Schaue mal in den Beitrag Hyperlink auf Formularfeld?

_________________
Gruß
Klaus . . . . . Feedback wäre wünschenswert.
Ich möchte bitte keine unaufgeforderten PN. Fragen bitte im Forum.
TZ.
Office-Beginner


Verfasst am:
22. Okt 2009, 13:41
Rufname:

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo Klaus,
danke für den Hinweis. Ich konnte das Problem damit leider noch nicht lösen. - Vielleicht habe ich die Aufgabe, die ich gerne realisiert haben würde, noch nicht deutlich machen können. Oder?

Aus deinem Hinweis habe ich das DoCmd angepasst und ergänzt mit:
Code:
    DoCmd.OpenForm "FormularX", , , "Parent!ID=" & Me!ID_Datum
Ich glaube aber, ich brauche irgendwo ein FindFirst, damit der aktuelle Datensatz gefunden werden kann. Bin weiter offen für Vorschläge und Rückfragen. Dank euch!

Bin auch gerade im Forum suchen und lesen - und (versuche) daraus zu lernen.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
22. Okt 2009, 15:06
Rufname:
Wohnort: NRW

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo Thomas,

wie lautet die Datenherkunft von FormularX und wie heißt das Datenfeld, dass den Primär-Key darstellt?
Und schließlich, wie heißt das Steuerelement in Formular1, das mit dem gesuchten Primär-Key übereinstimmt?

_________________
Gruß MissPh!
TZ.
Office-Beginner


Verfasst am:
22. Okt 2009, 16:37
Rufname:

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo MissPh!

Es handelt sich um dieselbe Datenbank, an der du mir neulich schon einmal geholfen hast. Es geht um das Erhebungsdatum. Dort soll die Möglichkeit eingearbeitet werden, das Erhebungsdatum einmal als "Studiendatum" und einmal als "gewöhnliches Erhebungsdatum" einzutragen. Daher auch das Kontrollkästchen mit dem Ja/Nein-Feld: Ja="Datum innerhalb der Studie", Nein="Gewöhnliches Datum, gewöhliche Untersuchung außerhalb der Studie".

Datenherkunft FormularX = Tabelle "Verknuepfung"
Datenfeld, das Primärkey darstellt = ID_Datum (von Tabelle Verknuepfung)
Steuerelement in Formular1 (also das Hauptformular), das mit dem ... = ID (?)

Das ist - fürn Anfang - ein "wenig" verwirrend.

Lieben Dank und viele Grüße
Thomas

P.S. Ich komme wohl erst am Montag wieder dazu hier herein zu schauen.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
22. Okt 2009, 17:04
Rufname:
Wohnort: NRW

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Dann hast du das Kriterium wohl genau falsch herum angegeben, so sollte gehen:
Code:
    DoCmd.OpenForm "FormularX", , , "ID_Datum=" & Me!ID
Zitat:
Steuerelement in Formular1 (also das Hauptformular), das mit dem ... = ID (?)
Du solltest wissen wo sich das entsprechende Feld befindet und wie es heißt... Rolling Eyes
Was hat es mit diesem "Parent" auf sich? Wo befindet sich der Code und wo das Datenfeld ID?

_________________
Gruß MissPh!
TZ.
Office-Beginner


Verfasst am:
26. Okt 2009, 12:12
Rufname:

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Hallo,

Der Code befindet sich im Ereignis NotInList der ungebundenen Felder cboErhebung, das das Erhebungsdatum eingibt.
Code:

Private Sub cboErhebung_NotInList(NewData As String, Response As Integer)
    If MsgBox("Soll ein neues Erhebungsdatum eingetragen werden?", vbYesNo + vbQuestion, "Neues Erhebungsdatum eintragen?") = vbYes Then
       CurrentDb.Execute "Insert Into Verknuepfung (ID_Patient, Erhebung) Values(" & _
                               Me.Parent!ID & ", " & CDbl(DateValue(NewData)) & ")"
        Response = acDataErrAdded
        If Me.Parent!Studienpatient = True Then
         DoCmd.OpenForm "ErhebungStudie", , , "ID_Datum=" & Me.Parent!ID
        Else
        End If
     Else
       Response = acDataErrContinue
    End If
End Sub


cboErhebung befindet sich im Unterformular Erhebung,
ID befindet sich im Hauptformular, daher das Me.Parent!ID.

So funktioniert es aber auch nicht.
MissPh!
Office-VBA-Programmiererin


Verfasst am:
26. Okt 2009, 12:34
Rufname:
Wohnort: NRW

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Zitat:
So funktioniert es aber auch nicht.
Liefere bitte eine exakte Fehlerbeschreibung: Was tust du und was passiert? Welche Meldung kommt und an welcher Stelle?

Ich fürchte, du wirst eine Demo-DB hochladen müssen, damit wir auf einen Nenner kommen, ich weiß nicht mehr, was da falsch laufen könnte.

_________________
Gruß MissPh!
TZ.
Office-Beginner


Verfasst am:
26. Okt 2009, 12:46
Rufname:

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Es erscheint keine Fehlermeldung. Es wird lediglich nicht das gemacht, was es idealerweise soll, nämlich in das Feld (Kontrollkästchen) ErhebungStudie die entsprechende Information schreiben.

Ja, ich lade eine TestDB hoch.



TestDB.zip
 Beschreibung:

Download
 Dateiname:  TestDB.zip
 Dateigröße:  141.33 KB
 Heruntergeladen:  9 mal



Zuletzt bearbeitet von TZ. am 27. Okt 2009, 14:43, insgesamt einmal bearbeitet
MissPh!
Office-VBA-Programmiererin


Verfasst am:
26. Okt 2009, 13:02
Rufname:
Wohnort: NRW

AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Bitte stets mit angeben, was zu tun ist, also welches Formular öffnen, was wo eingeben, etc. - Danke!

...naja, mit etwas Mühe finde ich es auch alleine.
Code:
        If Me.Parent!Studienpatient = True Then
         DoCmd.OpenForm "ErhebungStudie", , , "ID_Datum=" & Me.Parent!ID, acFormEdit, acDialog
        Else
        End If
Muss ich dir deine Datenbank erklären? Confused
ID_Datum ist der Autowert-Key der Tabelle Verknuepfung, Me.Parent!ID ist die Patienten-Nr.
Was du an der Stelle brauchst ist der Key des soeben eingefügten Datensatzes. Den kannst du z.B. mit Hilfe der DMax-Funktion ermitteln:
Code:
Dim maxID As Long
maxID = DMax("ID_Datum","Verknuepfung")

_________________
Gruß MissPh!
TZ.
Office-Beginner


Verfasst am:
26. Okt 2009, 14:50
Rufname:


AW: Kontrollkästchen in Formular - AW: Kontrollkästchen in Formular

Nach oben
       Version: Office 2003

Ich habe jetzt geschrieben:
Code:

DoCmd.OpenForm "ErhebungStudie", , , "ID_Datum=" & maxID, acFormEdit, acDialog

wobei ich die entsprechende Variablendefinition maxID in der NotInList-Prozedur definiert ist, in der auch diese DoCmd.Openform Anweisung zu finden ist. Damit kommen wir der Lösung schon näher. Denn es wird eine Markierung SD eingefügt im Listenfeld für cboErhebung, allerdings nicht für das gerade eben zum Eintrag kommende Erhebungsdatum, sondern für das Erhebungsdatum davor. Wohl muss einfach noch ein "+1" eingefügt werden. Geht das?

Viele Grüße
Thomas
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Gehe zu Seite 1, 2  Weiter
Diese Seite Freunden empfehlen

Seite 1 von 2
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrage von Formular zu mehreren Tabellen gleichzeitig 5 Friedel 1237 22. Mai 2005, 11:06
jens05 Abfrage von Formular zu mehreren Tabellen gleichzeitig
Keine neuen Beiträge Access Tabellen & Abfragen: Abfrageergebnis als neues Formular anzeigen 2 mila 3034 12. Apr 2005, 12:38
mila Abfrageergebnis als neues Formular anzeigen
Keine neuen Beiträge Access Tabellen & Abfragen: Anzahl der Datensätze zählen (im Formular oder Bericht) ? 3 anna-bolika 3756 31. März 2005, 12:50
Dalmatinchen Anzahl der Datensätze zählen (im Formular oder Bericht) ?
Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten. Access Tabellen & Abfragen: Formular Daten in einer Tabelle speichern? 1 Gast 1017 24. März 2005, 16:24
Willi Wipp Formular Daten in einer Tabelle speichern?
Keine neuen Beiträge Access Tabellen & Abfragen: Formular: Groesse? 1 Gast 732 24. März 2005, 13:35
Sanne Formular: Groesse?
Keine neuen Beiträge Access Tabellen & Abfragen: Automatische Aktualisierung von generiertem Wert im Formular 9 GandalfTCM 1041 09. Feb 2005, 17:40
lothi Automatische Aktualisierung von generiertem Wert im Formular
Keine neuen Beiträge Access Tabellen & Abfragen: Wert übernehmen von einem Formular in das andere 2 mactoolz 1244 03. Feb 2005, 17:46
ralphkr Wert übernehmen von einem Formular in das andere
Keine neuen Beiträge Access Tabellen & Abfragen: mehrer abfragen ein formular 1 romu 719 10. Jan 2005, 15:54
lothi mehrer abfragen ein formular
Keine neuen Beiträge Access Tabellen & Abfragen: Add Record - Formular in ein Nebenformular 6 User007 926 27. Okt 2004, 11:49
Gast Add Record - Formular in ein Nebenformular
Keine neuen Beiträge Access Tabellen & Abfragen: Wert eines Feldes aus Formular in Tabelle speichern 18 kave78 13710 16. Okt 2004, 13:40
Ming Wert eines Feldes aus Formular in Tabelle speichern
Keine neuen Beiträge Access Tabellen & Abfragen: Standardwert in Formular aus einer Abfrage? 3 Gast 1777 04. Okt 2004, 12:53
Pfobeman Standardwert in Formular aus einer Abfrage?
Keine neuen Beiträge Access Tabellen & Abfragen: Kriterien aus nem Formular die mich fertig machen!!! 19 Martin von der Bergwiese 2658 24. Aug 2004, 12:53
Lorenz Kriterien aus nem Formular die mich fertig machen!!!
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Microsoft Word Serienbriefe