Access-o-Mania

Access-Forum (Deutsch/German) => Tabelle/Abfrage => Thema gestartet von: a0554 am Juni 14, 2019, 01:13:09

Titel: Zeilen einer Abfrage in ein einziges Feld mit Kommatrennung zusammenfassen
Beitrag von: a0554 am Juni 14, 2019, 01:13:09
Hallo zusammen,
ich suche mir jetzt schon seit Stunden einen Wolf...

Ich habe ein Endlosformular mit sämtlichen deutschen Postleitzahlen auf dem über eine Checkbox ausgewählt wird, ob ein Anbebot in der PLZ angeboten werden soll.

Also:
Postleitzahlengebiet      Angebot_ja#
72336                                 x
72458
72459                                 x
...

In einer Abfrage Filter ich auf den Wert ,,ja" der Checkbox. Somit werden mir nur die in Frage kommenden PLZ angezeigt.

Also:
72336
72459
...

Nun muss ich die mit ,,ja" gewählten Postleitzahlen in eine Excel überführen. Hier ist das Problem, dass alle Postleitzahlen in ein Feld mit ,,Komma getrennt" exportiert werden müssen.

also: 72336, 72459, ...

Wie bekomme ich es jetzt hin, dass die gefilterten Postleitzahlen die in der Abfrage untereinander stehen ALLE in einem Feld mit einer ,,Kommatrennung" stehen?

Für eure Hilfe und Mühe schon vielen Dank
im Voraus!

Titel: Re: Zeilen einer Abfrage in ein einziges Feld mit Kommatrennung zusammenfassen
Beitrag von: PhilS am Juni 14, 2019, 09:22:54
Ich habe mal einen Text veröffentlich, der zeigt, wie du Daten eines Feldes als kommagetrennte Liste ausgeben (https://codekabinett.com/rdumps.php?targetDoc=access-vba-daten-spalte-kommagetrennt-ausgeben) kannst.

Ansonsten gibt es noch das häufig genannte Beispiel SQLListe (https://dbwiki.net/wiki/VBA_Tipp:_Liste_per_SQL_aufbauen).
Titel: Re: Zeilen einer Abfrage in ein einziges Feld mit Kommatrennung zusammenfassen
Beitrag von: martin1991 am Juni 14, 2019, 09:50:23
alternativ ein kurzes Script das nicht alle Eventualitäten abdeckt.

Sub StringAusAbfrage()
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim str As String
    Set db = CurrentDb()
    Set rs = db.OpenRecordset("qryDeineAbfrage", dbOpenDynaset)

   Do While Not rs.EOF
        str = str & rs!DeineSpaltenbezeichnung & ","
        rs.MoveNext
    Loop
    Debug.Print str
End Sub

Titel: Re: Zeilen einer Abfrage in ein einziges Feld mit Kommatrennung zusammenfassen
Beitrag von: a0554 am Juni 17, 2019, 10:36:19
VIELEN DANK für eure Hilfe!