Acc2013 - Inhalt aus mehreren Spalten/Zeilen zusammenfassen (Access)

Martin Asal @, Dienstag, 03.03.2020, 09:39 (vor 83 Tagen) @ Wispergen

Hallo Wispergen,

nur so am Rande: Als ich mir dein Beispiel angesehen habe, war mein erster Eindruck, dass deine Tabelle möglicherweise gegen die 1. Normalform verstoßen könnte.

Jedenfalls dürfte das nicht ohne weiteres so machbar sein, wie du dir das vorstellst. Falls du nicht zu viele unterschiedliche Texte im Feld "Find" hast, könnte eine Kreuztabellenabfrage eine Lösung sein, wobei es da natürlich viele leere Felder pro Datensatz geben würde.

Eine andere Lösung, die eher deinem gewünschten Ergebnis entspräche, wäre per VBA umsetzbar: Zuerst erstellst du eine Abfrage, die sich nur auf das Feld ET bezieht:

SELECT ET FROM Tabelle GROUP BY ET;

Diese Abfrage öffnest du per VBA, gehst die Recordsets in einer Schleife durch, um jeweils "ET" als Bedingung zu erhalten. Innerhalb dieser Schleife öffnest du jeweils folgende weitere Abfrage:

SELECT Find FROM Tabelle WHERE ET = ...

Auch da gehst du mit einer inneren Schleife durch und hängst den jeweiligen "Find" an einen String an, den zu zu guter Letzt ausgibst.

Aber wie gesagt, das ist etwas aufwendiger - und falls du von Anfang an vielleicht falsch normalisiert hast, geht es insgesamt ohnehin anders einfacher.

Martin


gesamter Thread:

 RSS-Feed dieser Diskussion

powered by my little forum