Vraag : Hoe ik dedupe een lijst en een nieuwe lijst door de dupes in één enkel verslag te combineren creëren?

Hello hebben de Deskundigen,
I een gegevensbestand van Microsoft Access 2007 met een lijst die dubbele adressen bevatten. Ik moet een nieuwe lijst creëren die elimineert de dubbele adressen maar de namen van de verslagen verzamelt die in één enkel verslag worden geschrapt en worden gezet. Zo kon de resulterende lijst soms slechts 1 of 2 gebieden van de Naam hebben en kan soms 4 of 5 of meer gebieden van de Naam hebben. Wanneer ook het creëren van de nieuwe tabel 1behoefte om names.
Not werkelijk aaneen te schakelen zeker hoe te om dit te doen… Om het even welke hulp zou fantastic.

So de oorspronkelijke lijst een paar verslagen als dit zou hebben:
first_name, last_name, adres, csz
Joe, Smith, 1234 Straat, FL 32654
Patty, Jones, 1234 Straat, FL 32654
Kevin van het Palm Beach van het Palm Beach, verslaat, 1234 Straat, FL 32654
Bill, Townsend, 4354 Steeg, NY 12345
Jane, Adams, van het Palm Beach van New York Steeg 4354, NY 12345

The- outputlijst als dit moeten kijken:
full_name1, full_name2, full_name3, adres, csz
Joe Smith, Pasteitje Jones, Kevin Downs, 1234 Straat, FL 32654
Bill Townsend, Jane Adams van het Palm Beach, 4354 Steeg, NY 12345
van New York

Antwoord : Hoe ik dedupe een lijst en een nieuwe lijst door de dupes in één enkel verslag te combineren creëren?

Dan bouw enkel een tijdelijke lijst die ALLE namen op één enkel gebied, samen met een adres houdt:

Currentdb.Execute „selecteer Adres, csz IN YourTempTable VAN Uitgezocht Verschillend Adres, csz VAN YourExistingTable“

Voeg nu een gebied SendTo toe:

Currentdb.Execute „VERANDER LIJST YourTempTable TOEVOEGEN de TEKST van SendTo van de KOLOM (255)“

Bouw nu een recordset waar u door alle namen voor een specifiek Adres kunt van een lus voorzien + csz, en de namen aaneenschakelen:

Verduister rst als DAO.Recordset
Verduister rstNames als DAO.Recordset
Verduister sNames als Koord

plaats rst = Currentdb.OpenRecordset („SELECTEER * UIT YourTempTable“)

Doe tot rst.EOF
  Plaats rstNames = Currentdb.Openrecordset („SELECTEER * UIT YourExistingTable WAAR [Adres] = '“ & rst („Adres“) &“ „EN csz=““ & rst („csz“) &“ ') „
  sNames = ""
  Doe tot rstNames.EOF
    sNames = sNames & vbCrLf & rstNames („First_Name“) &“ „& rstNames („Last_Name“)
    rstNames.movenext
  Lijn
  rst. Geef uit
  rst („SendTo“) = sNames
  rst. Update
Lijn
Andere oplossingen  
 
programming4us programming4us