Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Access2000: Textfeld: Wert aus Spalte(x) eines Combofeldes

Empfohlene Antworten

Veröffentlicht

Hi, Leute!

Stand:

Ich habe eine Tabelle mit Kundendaten; darauf basiert eine Abfrage mit (hier) 6 Zielfeldern.

In einem Formular kann über ein Kombinationslistenfeld eine vorhandene Kundennummer ausgewählt werden.

Problem:

In weiteren ungebundenen Textfeldern in diesem Formular (alles im Detailbereich...) sollen nun die zugehörigen Informationen (Name, Strasse, ...) angezeigt werden.

Versuchte Lösungen:

F1-Hilfe

Dort steht unter 'Verweisen auf eine Listenspalte in einem Ausdruck' geschrieben:

[Formulare]![Kunden]![Land].Spalte(1)

Auszuschließende Fehlerquellen:

Ich habe die entsprechenden Parameter durch meine ausgetauscht (Copy/Paste),

ein '=' vorangestellt,

ein Leerzeichen zwischen 'e(' eingefügt

Ich habe im Formularentwurf die 'Anzahl der Spalten' auf 6 geändert.

Ich greife nicht z.B. auf Spalte(10) zu.

Der Ausdruck muß doch in der Eigenschaft 'Steuerelementeinhalt' stehen, oder?

([Formulare]![Kunden]![Land] (sinngemäß) funktioniert! Dann steht im Ungebundenen eben genau das, was auch in der Kombobox steht.)

Es geht irgendwie! Das Problem habe ich immer wieder!!

(Unter Access 97 war es nicht .Spalte(), sondern .Column()

(glaube ich...))

Kann es an einer unsauberen Installation liegen (dumme Frage...)???

Ich hoffe, Ihr könnt mir helfen...

Original geschrieben von piomode1

Dort steht unter 'Verweisen auf eine Listenspalte in einem Ausdruck' geschrieben:

[Formulare]![Kunden]![Land].Spalte(1)

Ja, stimmt schon. Wenn du auf dem gleichen Formular bist kannst du [Formulare]![Kunden]! weglassen. 0 ist die erste Spalte.

Hast du im Kombinationsfeld alle Felder in der Datensatzherkunft drin?? Du kannst nur auf die Spalten zugreifen, die du da per SQL-Anweisung eingetragen sind. Spalten die nicht angezeigt werden sollen kannst du dann über die Eigenschaft Spaltenbreite ausblenden. Die Spaltenbreiten werden mit ; getrennt, d.H. wenn du eine Spalte hinten ausblenden willst, mußt du auch für die vorderen Spalten eine Breite angeben.

Alternativ könntest du auch, wenn du im Kombinationsfeld eindeutige Werte hast über =DomWert("Feldname";"Tabellenname";"Where-Bedingung") die benötigten Werte direkt aus den Tabellen auslesen

Ich hoffe das hilft dir weiter...

  • Autor

Hi, Wolle!

Vielen Dank, daß Du Dich meines Problems angenommen hast!!

Also: Hinter der cbo steht eine Abfrage (Datenherkunft); die Spalten- und Listenbreite hatte ich auch schon manipuliert.

D.h. die DropDown-Liste zeigt alle 6 Spalten (gespeichert wird der Wert der ersten Spalte).

Eine Möglichkeit wäre jetzt in der Formular-Abfrage die Tabelle mit den entsprecheden Daten zu verknüpfen und die Ausgabefelder im Formular zu sperren...

Das ist aber "unschön"!

Schade, schade, schade...

Mit Bitte um weitere Hilfe

Ich habs jetzt noch mal ausprobiert.

Ich habe ein Formular1 mit dem Kombinationsfeld "test" und ein Formular2 mit einem Textfeld "Text0" gemacht.

Bei dem Kombinationsfeld habe ich bei der Datenherkunft eine Abfrage mit 3 Spalten eingetragen.

In dem Textfeld habe ich bei Steuerelementinhalt folgendes eingetragen: =[Formulare]![Formular1]![test].[column](2)

Zusätzlich habe ich bei dem Ereignis "Nach Aktualisierung" des Kombinationsfeldes folgenden VBA-Code reingemacht:


Private Sub test_AfterUpdate()

      Forms!Formular2.Recalc

End Sub

Das bewirkt einfach, das das Formular2 (und damit auch die Textfelder) nach Auswahl eines anderen Wertes im Kombinationsfeld aktualisiert wird.

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.