Access - Doppelte Einträge aus 2 Zeilen in eine bringen

Seite 1 von 1 - Forum: Coding Stuff auf overclockers.at

URL: https://www.overclockers.at/coding-stuff/access_doppelte_eintraege_aus_2_zeilen_in_eine_bri_170776/page_1 - zur Vollversion wechseln!


Nidhoeggr schrieb am 30.10.2006 um 14:21

Habe folgendes Problem:

In einer Access Datenbank habe ich Kunden abgespeichert, an die jetzt ein Serienbrief rausgehen soll. Allerdings kommt es relativ häufig vor, dass 2 Leute die gleiche Adresse haben, da sie zusammen wohnen. Ich will aber nicht beiden seperat einen Brief schicken, sondern einen Brief wo beide Namen auftauchen.


In meiner Tabelle sieht das ganze so aus:

Name Straße
Herr X Glücksgasse 7
Frau Y Glücksgasse 7


Ich will eine Abfrage die dann so aussieht:

Name_1 Name_2 Straße
Herr X Frau Y Glücksgasse 7


Sinn der ganzen Sache: Ich will den Serienbrief mit "Sehr geehrte Name_2 (Frau Y) und sehr geehrter Name_1 (Herr X)" schreiben können.



Mit besten Grüßen,
Nidhoeggr


rettich schrieb am 30.10.2006 um 14:47

dynamische spalten sind halt so a gschichte...

gibts im access user defined functions? wenn ja:

[pseudocode]
select myNameFunction(Straße) as Namen, Straße from Kunden ...

define function MyNameFunction(@param)
[
select Name from Kunden where Straße = @param
for each Name in Recordset
Namen = Name + ','
return Namen;
]
[/pseudocode]

dann kannst mit einem einzigen SQL statement alle rausholen und anschließend die spalte "Namen" wieder nach belieben zerparsen.


Nidhoeggr schrieb am 30.10.2006 um 16:21

Ja, gibt es. Habe den Code ausprobiert allerdings funktioniert er nicht wirklich... z.B. sagt er mir nach dem Kompilieren bei "myNameFunction" "Erwartet: Case"


AoD schrieb am 30.10.2006 um 17:08

ähm, ihr redet von 2 unterschiedlichen dingen.

rettich redet von SQL Funktionen, während du wahrscheinlich die Funktion im VBA Editor eingefügt hast. zudem das ja nur pseudocode ist.

ich würde das so lösen, indem ich per VBA Makro die Ursprungs Tabelle auslese und doppelte Datensätze nur einmal mit korrigierten Namen in eine temporäre Tabelle schreibe. Für den Serienbrief wird dann diese temporäre Tabelle verwendet.


rettich schrieb am 30.10.2006 um 17:15

Zitat von Nidhoeggr
Habe den Code ausprobiert allerdings funktioniert er nicht wirklich...

bwwwaaahahaha :D

sorry.

http://en.wikipedia.org/wiki/Pseudocode


Nidhoeggr schrieb am 30.10.2006 um 17:38

Das Problem ist nur, dass ich das letzte Mal vor 3 Jahren programmiert habe und fast keinen Plan mehr habe, wie wo was hingehört ;)

Wenn mir also jemand diesen Pseudocoe in einen brauchbaren [str] + [c] und [str] + [v] code verwandeln kann, wäre ich da sehr verbunden :D




overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025