Werte, die zusammenhängen sollem immer im Formular eingetragen werden nach Eingabe des ersten Wertes
Hallo zusammen,
ich drehe mich im Kreis mit Access 2002 und einem Formularproblem.
Es geht um zwei Felder in einem Form: Wohnung (NE) und dazugehörige Wohnfläche.
Da jede Wohnung ja eine feste Größe hat, die in einer Tabelle fest eingetragen ist soll
bei der Zifferneingabe im Feld Wohnung im nebenstehenden Feld Wohnfläche der Wert eingetragen werden.
Ich habe eine Grundtabelle in der nur eine ID, wie Wohnungsnummer und die zugehörigen m² stehen,
genau diese festen Werte sollen in eine Auswertungstabelle eingetragen werden.
.
Das Ganze ändert sich auch nie bei den insgesamt 14 Wohnungen.
Bitte helft mir bei der Lösung
ich drehe mich im Kreis mit Access 2002 und einem Formularproblem.
Es geht um zwei Felder in einem Form: Wohnung (NE) und dazugehörige Wohnfläche.
Da jede Wohnung ja eine feste Größe hat, die in einer Tabelle fest eingetragen ist soll
bei der Zifferneingabe im Feld Wohnung im nebenstehenden Feld Wohnfläche der Wert eingetragen werden.
Ich habe eine Grundtabelle in der nur eine ID, wie Wohnungsnummer und die zugehörigen m² stehen,
genau diese festen Werte sollen in eine Auswertungstabelle eingetragen werden.
.
Das Ganze ändert sich auch nie bei den insgesamt 14 Wohnungen.
Bitte helft mir bei der Lösung
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 240195
Url: https://administrator.de/contentid/240195
Ausgedruckt am: 25.11.2024 um 13:11 Uhr
3 Kommentare
Neuester Kommentar
Hallo Geheimratx,
dafür gibt es die Funktion DLookup(). Ich erläutere das mal an einem Beispiel:
Du hast deine zwei Felder, das eine in das die ID eingegeben wird, heisst im folgenden Code txtID und das Feld für die Fläche txtFlaeche. Die Tabelle hieße jetzt mal wohnraum und die Datenbankspalte für die Fläche flaeche und das für die Id ID.
Jetzt kannst folgenden VBA Code im Bei Änderung-Event von txtID hinterlegen, der bei Eingabe einer ID den entsprechenden Eintrag in der Tabelle raus sucht und die Fläche im anderen Feld einträgt.
Grüße Uwe
dafür gibt es die Funktion DLookup(). Ich erläutere das mal an einem Beispiel:
Du hast deine zwei Felder, das eine in das die ID eingegeben wird, heisst im folgenden Code txtID und das Feld für die Fläche txtFlaeche. Die Tabelle hieße jetzt mal wohnraum und die Datenbankspalte für die Fläche flaeche und das für die Id ID.
Jetzt kannst folgenden VBA Code im Bei Änderung-Event von txtID hinterlegen, der bei Eingabe einer ID den entsprechenden Eintrag in der Tabelle raus sucht und die Fläche im anderen Feld einträgt.
Private Sub txtID_Change()
Dim result As Variant
If Me.txtID.Text <> "" Then
result = DLookup("[flaeche]", "wohnraum", "[ID] = " & Me.txtID.Value)
If Not IsNull(result) Then
Me.txtFlaeche.Value = result
Else
Me.txtFlaeche.Value = ""
End If
Else
Me.txtFlaeche.Value = ""
End If
End Sub
Hallo Klaus,
Vielleicht gibt es ja eine neuere Lösung für mein Problem bei
eine neuere Lösung ?? Ist meine altbacken ? versteh ich nicht, die hat genau das gemacht was du zuerst beschrieben hast. Access Lösungen sind immer individuell zu betrachten, was fertiges wo du nichts mehr anpassen musst wirst du selten finden.
Grüße Uwe
Zitat von @Geheimratx:
Hallo und DANKE erst einmal für das schnelle und freundliche Hilfe-Angebot.
Ich hatte vielleicht ein oder zwei Angaben vergessen bei meiner Hilfesuche:
1. möchte ich keine neue Tabelle mit neuen Feldnamen erstellen,
Musst du auch nicht, ich hatte vorausgesetzt das du die Namen natürlich durch deine ersetzt!Hallo und DANKE erst einmal für das schnelle und freundliche Hilfe-Angebot.
Ich hatte vielleicht ein oder zwei Angaben vergessen bei meiner Hilfesuche:
1. möchte ich keine neue Tabelle mit neuen Feldnamen erstellen,
2. ist ein ID-Feld als Autowert mit Schlüssel bereits vorhanden.
schon klar hatte ich ja berücksichtigt!Die beiden vorhandenen und betreffenden Felder sind NE (was Nutzereinheit bedeutet) als INTEGER definiert, ohne Duplikate
indexiert und
"Wohnfläche" als Double-Wert mit Duplikat te Ja indexiert.
Diese beiden Felder befinden sich in einem Verwaltungs-Formular.
Ich möchte nur einfach (vielleicht über ein Auswahl-Button der Ne die feste Wohnraumgröße zuordnen und in
Formular und Tabelle eintragen lassen.
Natürlich habe ich probiert mit Deinem Code, lieber Uwe, nur stimme anfangs an der Syntax etwas nicht (Me! statt Me.)
das ist beides gültig ! Ich bin ja nun kein Access noob.indexiert und
"Wohnfläche" als Double-Wert mit Duplikat te Ja indexiert.
Diese beiden Felder befinden sich in einem Verwaltungs-Formular.
Ich möchte nur einfach (vielleicht über ein Auswahl-Button der Ne die feste Wohnraumgröße zuordnen und in
Formular und Tabelle eintragen lassen.
Natürlich habe ich probiert mit Deinem Code, lieber Uwe, nur stimme anfangs an der Syntax etwas nicht (Me! statt Me.)
dann wurden falsche Werte eingetragen, was nicht sein darf, weil die Felder immer zusammengehören.
dann hast du was nicht richtig gemacht. Denn hier ging es einwandfrei, ich poste ja sowas nicht ohne Tests!Vielleicht gibt es ja eine neuere Lösung für mein Problem bei
Ich möchte nur einfach (vielleicht über ein Auswahl-Button der Ne die feste Wohnraumgröße zuordnen und in Formular und Tabelle eintragen lassen.
Mach das nochmal anhand von einem Bild deines Formulars klarer. Danke. Ist auf jeden Fall absolut kein Hexenwerk das ganze, nur fehlen eben ein paar Details um hier "exakt" passenden Code zu posten. Für Access braucht man die halt, da ein Formular sehr unterschiedlich aufgebaut sein kann und als Helfer steht man dann immer auf dem Schlauch Grüße Uwe