Access-o-Mania

Access-Forum (Deutsch/German) => Formular => Thema gestartet von: Alain am September 26, 2017, 13:28:59

Titel: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 13:28:59
Hallo Zusammen,
ich habe eine Tabelle mit den Spaltennamen A, B, C, 1, 2, 3, 4 ... bis 200.
ich möchte nun in einem Formular direkt auswählen z.B. über ein Textfeld welche der Spalten 1-200 mir Angezeigt wird. Wobei die Spalten A, B, und C immer dabei sind. Also wenn ich in das Textfeld eine "5" eingebe würden mir die Spalten A, B, C und 5 angezeigt.
Währe schön wenn mir jemand helfen könnte
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: MzKlMu am September 26, 2017, 13:44:31
Hallo,
da würde ich eher über das Datenmodell nachdenken, zumal das gar nicht so einfach ist. 200 Felder in einer Datenbanktabelle deuten auch auf ein falsches Datenmodell hin. 20 Felder in einer Datenbanktabelle sind da schon viel.
Kannst Du mal etwas zum Hintergrund des Vorhabens sagen ?
Was stehen denn in den 200 Feldern (1, 2, 3, ...) für Informationen ?
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 14:23:18
Hallo Klaus,
Danke erstmal für die schnelle Antwort.
Die Tabelle ist der Import einer Excel Matrix, die ich versuche in einer Datenbank Übersichtlich darzustellen.
Da stehen nur kurze Wörter oder Buchstaben (ein, aus, x, usw).
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: DF6GL am September 26, 2017, 14:58:31
Hallo,

soll immer nur eine Spalte auswählbar sein?


Dann könnte solche (minimale) Lösung zum Ziel führen:

In einem Formular mit Basis zur tblImport und mit 4 gebundenen Textfeldern ("A","B","C","D") und dem ungebundenen Textfeld "txtTextfeld":


Sub txtTextfeld_Afterupdate()
Me.Recordsource = "select a,b,c, [" & Me!txtTexfeld & "] as d from tblImport "
End Sub
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 15:06:24
Hallo Franz,

ja es soll nur eine Spalte auswählbar sein.
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: DF6GL am September 26, 2017, 15:07:27
Hallo,

habe eine mögliche Lösung schon angegeben..
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 15:55:08
Vielen Dank Franz,

ich versuche jetzt erstmal das zu verstehen und probiere mal wie ich das in die Datenbank reinbekomme.
Melde mich dann nochmal.
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 16:16:53
Hallo Franz,

du schreibst 4 gebundene Textfelder
Ich gehe davon aus das du mit Binden den Steuerelementinhalt meinst.
A, B, C ist klar das sind die aus der Datenbank (ist auch auswählbar), aber mit was soll ich D binden?


Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Lachtaube am September 26, 2017, 16:22:10
d ist ein frei gewählter Alias-Name für das vierte (variable) Feld - sonst müsstest Du bei jedem Wechsel nicht nur die Datensatzquelle, sondern auch noch den Steuerelementinhalt des variablen Steuerelements ändern.
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 16:50:16
Die Frage die sich mir stellt ist, wie weis das Textfeld das es d ist?
Oder mit anderen Worten, wo schreib ich das d hin,
wenn ich es in den Steuerelementinhalt schreibe bekomme ich ein Fehler (#Name?)
wenn ich es als Name verwende ist es Ungebunden und ohne Wert.
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 26, 2017, 18:30:37
Hallo Franz,

grundsätzlich ist diese (Minimale) Lösung das was ich brauche,
aber leider bekomme ich das vierte Textfeld "D" nicht dazu variabel zu sein. 
Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: DF6GL am September 27, 2017, 08:21:05
Hallo,

bau in das Form 4 Textfelder A, B, C, D  mit jeweils Steuerelementinhalt A, B, C, D (dadurch gebunden an die 4 Felder in der Abfrage )  und ein Textfeld txtTextfeld (ungebunden, Steuerelementinhalt bleibt leer)  ein.

Die Datenherkunft kann leer bleiben .

Wenn eine Eingabe in txtTextfeld erfolgt und  Return gedrückt wird, erfolgt der Aufruf der gezeigten Prozedur, die der Datenherkunft einen SQL-String (Abfrage) zuweist.  Jede nach Eingabe im TxtTextfeld wird neben A,B,C  die entspr. Spalte selektiert , die den Namen "D"  als Alias erhält (und deren Inhalt dann mit Textfeld "D" angezeigt wird).

Die "variable" Spalte erhält immer den Namen "D".


Titel: Re: Direkte Spaltenvorwahl im Formular
Beitrag von: Alain am September 27, 2017, 11:51:11
Hallo Franz,

Schön das du dich nochmal meldest, diese Version hatte ich schonmal versucht und eine Fehlermeldung erhalten, jetzt bin ich dem mal nachgegangen und habe festgestellt das in dem Code den du vorgegeben hast ein "t" fehlt.
Jetzt funktioniert es  :)
Vielen Dank für die Hilfe.