Office: (Office 2010) Mehrere Datensätze in einem Textfeld anzeigen?

Helfe beim Thema Mehrere Datensätze in einem Textfeld anzeigen? in Microsoft Access Hilfe um das Problem gemeinsam zu lösen; Kann ich mehrere Datensätze im einem einzigen Textfeld darstellen? zB Durch Kommata getrent oÄ? Ich möchte nicht mehrere Felder der Tabelle... Dieses Thema im Forum "Microsoft Access Hilfe" wurde erstellt von Alex_, 7. Januar 2017.

  1. Mehrere Datensätze in einem Textfeld anzeigen?


    Kann ich mehrere Datensätze im einem einzigen Textfeld darstellen? zB Durch Kommata getrent oÄ?

    Ich möchte nicht mehrere Felder der Tabelle hintereinander sondern mehrere Datensätze aus einem Feld darstellen!

    Beispielfoto im Anhang.

    Es sind meistens nur 1-3 Datensätze die in ein Textfeld kommen sollen, also die Textfeldbreite ist noch absehbar.
    Die Daten stammen aus einer m:n Hilfs-Tabelle.

    Momentan ist das ganze noch mit Mehrwertigen Feldern realisiert und da klappt die Darstellung einwandfrei. Ich möchte es aber eben auf eine richtige m:n Beziehung umbauen und bin jetzt nurnoch dabei die Darstellung im Forumlar anzupassen.

    Wichtig:
    Mein Textfeld sitzt in einem Endlosformular.
    Ich bin auch für alternative Lösngen offen aber ein Unterformular zur Ansicht der Datensätze kommt nicht in Frage da es nicht möglich ist in Endlosformularen ein Unterformular einzufügen. Das würde auch die ansicht sprengen glaube ich.
    Notfalls kann ich auch auf die Ansicht im Endlosformuolar ganz verzichten aber wäre schon praktisch es dort gleich zu sehen.

    :)
     
  2. Moin,
    das ist wohl ein Fall für die Funktion SQLListe aus dem DBWiki (hier klicken).
    maike
     
    maikek, 8. Januar 2017
    #2
  3. Ein Textfeld kann nur einen Inhalt aufnehmen. Das kann ein String sein, der aus den Inhalten einer Abfrage zusammengesetzt ist. Dieser hat aber mit Datensätzen nichts mehr zu tun und wäre nur für die Darstellung geeignet.

    Methoden (für Recherche): SQLListe, ADOSQLListe
     
  4. Mehrere Datensätze in einem Textfeld anzeigen?

    Danke, SQLListe ist genau das was ich suche.
    Ich verzweifle aber an der Anwendung. Gestern lange getüftel und eben nochmal in Ruhe an die Sache rngegangen aber irgendwas mache ich falsch.

    Eigentlich ist die Syntax klar und die Beispieldatenbank auch, aber selbst in der Beispieldatenbank schaffe ich es nicht mit einfachsten Beispielen so ein Feld selber zu erstellen.

    Liegt das evtl daran dass ich die Datenbank im accdb Format speichere und nicht im mdb Format?

    In der Datenbank im Anhang habe ich eine Tabelle (tblfluss) und ein Formular (Formular1) erstellt.
    Das Formular hat als Datensatzquelle direkt die tblfluss.
    In der tblfluss gibts nur IDs und flüsse.
    Die Flüsse möchte ich jetzt Beispielhaft in einem Textfeld angezeigt kriegen.
    (Es sind ja nichtmal mehrere Flüsse pro ID weil ID=primärschlüssel aber für den Test sollte es ja reichen, habe es natürlich auch schon anders probiert...)

    Aber es erscheint nur #Fehler *frown.gif*

    Noch einfacher kann ich das Beispiel kaum gestalten. Ich weiß nicht woran das liegt.
     
  5. Dein ID-Feld ist kein Text - daher musst Du aus dem DBWiki-Beispiel-Aufruf das erste nehmen.
    Ich glaube aber nicht, dass es das ist, was Du willst!
    So würden ja nur beim Datensatzwechsel jeweils EIN Fluss dargestellt werden, da der SQL-String sich auf die aktuelle ID bezieht.
    Nehme folgendes für das Textfeld:

    Code:
    So bekommst Du alle Flüsse in das Textfeld...
     
    fraeser, 9. Januar 2017
    #5
  6. Bei einem Endlosformular würde man das Concatieren in einer Abfrage erledigen lassen und diese als Datenherkunft zuweisen.
     
  7. So bekommst Du alle Flüsse in das Textfeld...

    Das mit der ID hab ich auch gestern schonmal getestet aber ich werds gleich nochmal in Ruhe probieren.
    Und zu deinem Einwand: Ich hab oben ja extra geschrieben dass das nur ein sehr sehr vereinfachtes Beispiel ist und mir bewusst ist dass nur 1 Fluss pro ID bei rauskommt. Das war nur ein Versuch obs überhaupt funktioniert.

    Meine Datensatzherkunft ist in der Realität auch sogar noch weit komplizierter als ichs oben beschrieben habe. Ich hab gestern schon bemerkt dass es besser ist eine Abfrage zu erstellen und damit die SQLListe zu machen. Sollte aber ja egal sein obs eine Tabelle oder eine Abfrage ist woher die Daten für SQLListe stammen.




    Ich hab es in der Beispieldatenbank jetzt hingkriegt wie ich es haben möchte (prinzipiell). Keine Ahnung wieso es damit jetzt klappt, ich bin der Meinung dass ich das bereits so ausprobiert habe...


    Jetzt hapert es noch an der Umsetzung in meiner richtigen Datenbank aber ich weiß ja jetzt wie es geht.
    Ich tüftele mal weiter *biggrin.gif*
     
    Zuletzt von einem Moderator bearbeitet: 7. Januar 2021
  8. Mehrere Datensätze in einem Textfeld anzeigen?

    Flussabfrage (soweit nachvollziehbar):
    Code:
     
  9. Jetzt funktioniert es auch in meiner richtigen Datenbank!

    Der Knackpunkt war der Modulname!
    In der Beispiel-DB heißt das Modul modSQLListe!
    Ich habe das Modul jedoch nur SQLListe genannt.
    Dadurch hat von vorne rein einfach garnichts funktionieren können und meine gestrigen Syntaxversuche waren alle für die Katz.

    Ich denke dass ich es sonst gestern schon hingekriegt hätte mit meinen vielen Versuchen...

    Danke noch für den SQL Code der Abfrage aber meine Abfrage erstreckt sich über 4 Tabellen aus denen ich mir die 2 entsprechenden Datenfelder raushole (einmal eine ID und dann eben die Namen dazu).

    Jetzt funktioniert alles einwandfrei.
    Ich merke jetzt auch dass es zwar mehr Aufwand macht eine echte m:n Beziehung aufzubauen als mit Mehrwertfeldern zu arbeiten aber dafür steht das ganze jetzt und lässt sich doch leichter händeln.

    Ich hab (leider) zuerst die Mehrwertfelder für mich entdeckt und dachte das wäre die perfekte Lösung. Erst als es dann schon fast alles damit lief aber es immer komplizierte wurde damit zu arbeiten hab ich beim recherchieren rausgefunden dass generell eher davon abzuraten ist.
     
  10. Der Gebrauch von CurrentDb innerhalb der Funktion SQLListe macht diese aus Performance-Gründen im Gegensatz zu der anderen hier aufgeführten Funktion nicht unbedingt attraktiv für die Verwendung in einer Abfrage.
     
  11. Ich habe mich auf das Erstgenannte konzentriert da es genau meinen Wünschen entsprach. Nach ADOSQLListe habe ich garnicht gesucht.
    Man merkt zwar dass die Felder leicht verzögert ausgefüllt werden aber das stört nicht.
     
  12. Das ist eine Frage der Datenmenge, in welcher Größe die Verzögerung eintritt.

    SQLListe hat neben der jeweiligen Neuinstanzierung von CurrentDB (statt Verwendung einer einmaligen Instanz) noch das Problem einer nicht ganz effektiven Stringzusammensetzung, was dann um so deutlicher wird, je länger und je mehr die zu verbindenden Einzelstrings sind.

    Eine performantere Stringzusammensetzung bietet die ADODB-Methode Getstring, z.B. hier umgesetzt: Abfrage datensätze quer darstellen

    Und da hier eine Abfrage mit Filterung eingesetzt wird, sollte man auch an eine Indexnutzung denken, hier also an einen Index auf das Feld nr.
     
Thema:

Mehrere Datensätze in einem Textfeld anzeigen?

Die Seite wird geladen...
  1. Mehrere Datensätze in einem Textfeld anzeigen? - Similar Threads - Datensätze Textfeld anzeigen

  2. Makro für variable Anzahl von Datensätzen

    in Microsoft Excel Hilfe
    Makro für variable Anzahl von Datensätzen: Hallo zusammen, ich habe wieder einmal ein kleines Excel-Problem, bei dem Ihr mir sicherlich helfen könnt. Ich habe eine Excel-Liste, das ist ein Export aus einem anderen Programm (siehe...
  3. VBA - Datensätze ans Ende einer anderen Tabelle kopieren

    in Microsoft Excel Hilfe
    VBA - Datensätze ans Ende einer anderen Tabelle kopieren: Hallo zusammen, ich habe gerade eine "Abrechnungs"-Datei für einen Kindergartenbasar erstellt. Es wäre klasse, wenn man per Schaltfläche die Datensätze aus der Tabelle "Kaeufer" ans Ende der...
  4. Currentdb.Execute delete löscht alle Datensätze trotz Where Bedingung

    in Microsoft Access Hilfe
    Currentdb.Execute delete löscht alle Datensätze trotz Where Bedingung: Hallo Zusammen, ich hoffe, dass mir jemand weiter helfen kann. Ich habe folgendes Problem: Ich habe eine Tabelle (RegieImp), in welche ich aus Excel Daten importiere. Es gibt eine eindeutige ID...
  5. Endlosformular Datensätze per Textfeld filtern

    in Microsoft Access Hilfe
    Endlosformular Datensätze per Textfeld filtern: Hallo zusammen, Ich hab mal wieder mal eine Frage. In mein Endlosformular (gebunden mit der tblAuftraege) möchte ich im Formularkopf mit den zwei ungebunden Textfelder filtern. Ich habe im...
  6. Separates Zusatzfeld/Textfeld je Datensatz

    in Microsoft Access Hilfe
    Separates Zusatzfeld/Textfeld je Datensatz: Hallo liebes Forum, heute will ich wirklich alles wissen. *tongue.gif* Folgendes: Ich habe ein Formular mit 4 Kombiboxen die als Parameter für eine Abfrage dienen. Habe ich in diesen 4...
  7. Textfeld Datensatz x von y

    in Microsoft Access Hilfe
    Textfeld Datensatz x von y: Hallo, kleines Prolemchen im Formular mit Inhalt eines Textfeldes: Ich möchte mittels Textfeldern/Bezeichnungsfeldern folgendes anzeigen: Datensatz x von y ok, Steuerelementinhalt für y ist...
  8. Sortieren von Datensätzen nach in einem Textfeld gespeicherten numerischen Werten

    in Microsoft Access Tutorials
    Sortieren von Datensätzen nach in einem Textfeld gespeicherten numerischen Werten: Sortieren von Datensätzen nach in einem Textfeld gespeicherten numerischen Werten Access für Microsoft 365 Access 2019 Access 2016 Access 2013 Access 2010...
  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