Creation Script pour rearranger un tableau
Bonjour je souhaite solliciter votre aide pour créer un script qui me permettrai de réarranger les colonnes de ça :
date code postal ville adresse genre nom prenom tel1 tel2 tel3 mobile fax habitat age moyen ethnie tel1_prospection tel2_prospection tel3_prospection mobile_prospection fax_prospection
à ça :
CIVILITE NOM PRENOM ETAGE_PORTE RESIDENCE NUMVOIE INDICE_REP TYPE_VOIE LIBELLE_VOIE LIEU_DIT CODE_POSTAL VILLE COORDX COORDY TELEPHONE TYPE_HABITATION AGE REVENU_PAR_MENAGE PROPRIETAIRE COMMENTAIRE
Je migre de CRM, en haut vous avez l'export des contacts qui se fait sous ce format et en dessous le format d'import de mon nouveau CRM. je ne peux rien configurer n'y dans l'un n'y dans l autre. je dois donc vous demander votre aide pour créer un script qui transforme de l'un vers l'autre, en déplaçant les données dans les colonnes bien sur, et une colonne (adresse) à diviser en 4 ( NUMVOIE INDICE_REP TYPE_VOIE LIBELLE_VOIE)
dans un second temps il y a des "rechercher remplacer" à faire.
est ce possible ?
Ci joint modeleexport.csv est l'export de l'ancien CRM
et modeleimport.csv est le format à obtenir.
cordialement
Bonjour Okinotron et
Certaines colonnes n'ont rien à voir, alors comment faire ?
une premiere idée de code :
Sub Reorder_Columns()
Dim arrColOrder As Variant, ndx As Integer
Dim Found As Range, counter As Integer
'Place the column headers in the end result order you want.
arrColOrder = Array("COLUMN2", "COLUMN4", "COLUMN6", "COLUMN10", "COLUMN1", _
"COLUMN9", "COLUMN3", "COLUMN8", "COLUMN7", "COLUMN5")
counter = 1
Application.ScreenUpdating = False
For ndx = LBound(arrColOrder) To UBound(arrColOrder)
Set Found = Rows("1:1").Find(arrColOrder(ndx), LookIn:=xlValues, LookAt:=xlWhole, _
SearchOrder:=xlByColumns, SearchDirection:=xlNext, MatchCase:=False)
If Not Found Is Nothing Then
If Found.Column <> counter Then
Found.EntireColumn.Cut
Columns(counter).Insert Shift:=xlToRight
Application.CutCopyMode = False
End If
counter = counter + 1
End If
Next ndx
Application.ScreenUpdating = True
End Sub
Effectivement les colonnes en trop et leur données doivent etre supprimée
bon j ai enormement avancer je ferme ce sujet
merci quand meme