1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Sub Test()
Dim Cn As Object, Sql As String, rs As Object
Set Cn = CreateObject("Adodb.connection")
'jeffectue un connexion sur ThisWorkbook
With Cn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0 Xml;HDR=YES;"""
.Open
End With
'Requête de regroupent qui récupéré le max des champs!
Sql = " select [NOM],[ADRESSE],[VILLE],[CP],max([TEL]),max([PORTABLE]),max([MAIL]),max([ANCIENNES TV]),max([TV]),max([DONNE LE]),max([PILULIER (P) / RENOUVELLEMENT ( R)]),max([FICHIER D ORIGINE]),max([FICHIER]),max([DATE NAISSANCE]),max([AGE]),max([STATUT GLOBAL]),max([STATUT 1]),max([STATUT 2]),max([OBSERVATIONS]),max([ENVOI LIVRET]),max([DATE DE RAPPEL]) "
Sql = Sql & "From [Feuil1$] where [NOM] is not null "
Sql = Sql & "group by [NOM],[ADRESSE],[VILLE],[CP]"
Set rs = CreateObject("adodb.recordSet")
rs.Open Sql, Cn
ThisWorkbook.Sheets("Feuil2").Range("A2").CopyFromRecordset rs
rs.Close
Cn.Close
End Sub |
Partager