SELECT Table2 SCAN lcName = RTRIM( Name ) lcStrasse = RTRIM( Strasse ) FPUTS( m.lnFHandle, ; STUFF( m.lcName, RAT( " ", m.lcName ), 1, ", " ) +", "+ ; STUFF( m.lcStrasse, RAT( " ", m.lcStrasse ), 1, ", " ) +", "+ ; STUFF( RTRIM( Ort ), AT( " ", Ort ), 1, ", " ) +", "+ ; RTRIM( eMail ) ) ENDSCANOTOH this is only about 0.1 seconds faster than my original version but way worse to read. Part two of the contest (remove duplicates and create a table with a different structure) is still more than 17 seconds. The commands I used are INDEX ON...UNIQUE, COPY TO and SELECT...INTO TABLE.