patgravure35
XLDnaute Occasionnel
bonjour a tous et toutes
Voilà l'on m’a fait une macro pour un tableau mais je n'arrive pas à ce quel s’exécute toutes seul
Si quelqu’un sais comment faire je suis preneur
La macro et la suivant
Sub Macro2()
Dim dl As Integer 'déclare la variable dl
Dim dico As Object 'déclare la variable dico (DICtiOnnaire)
Dim pl As Range 'déclare la variable pl (PLage)
Dim cel As Range 'déclare la variable cel (CELlule)
Dim temp As Variant 'déclare la variable temp
Dim i As Integer 'décalre la variable i (Incrément)
Set dico = CreateObject("Scripting.Dictionary") 'définit le dictionnaire dico
With Sheets("prepa control") 'prend en compte l'onglet "Feuil1"
dl = .Cells(Application.Rows.Count, 6).End(xlUp).Row 'définit la dernière ligne éditée de la colonne F dl
Set pl = .Range("F2:F" & dl) 'définit la plage pl
For Each cel In pl 'boucle sur toutes les celllules cel de la plage pl
dico(Left(cel.Value, 6)) = "" 'alimente le dictionnaire avec les 6 premiers caractères de chaque cellule
Next cel 'prochaine cellule de la boucle
temp = dico.keys 'récupère les valeurs du dictionnaire sans doublon
For i = 0 To UBound(temp) 'boucle sur toutes les valeurs sans doublons
.Cells(6 + i, 19).Value = temp(i) 'place la valeur dans la colonne O à partor de la ligne 7
Next i 'prochaine valeur de la boucle
End With 'fin de la prise en compte de l'onglet "Feuil1"
End Sub
merci d'avance et a bientôt
Voilà l'on m’a fait une macro pour un tableau mais je n'arrive pas à ce quel s’exécute toutes seul
Si quelqu’un sais comment faire je suis preneur
La macro et la suivant
Sub Macro2()
Dim dl As Integer 'déclare la variable dl
Dim dico As Object 'déclare la variable dico (DICtiOnnaire)
Dim pl As Range 'déclare la variable pl (PLage)
Dim cel As Range 'déclare la variable cel (CELlule)
Dim temp As Variant 'déclare la variable temp
Dim i As Integer 'décalre la variable i (Incrément)
Set dico = CreateObject("Scripting.Dictionary") 'définit le dictionnaire dico
With Sheets("prepa control") 'prend en compte l'onglet "Feuil1"
dl = .Cells(Application.Rows.Count, 6).End(xlUp).Row 'définit la dernière ligne éditée de la colonne F dl
Set pl = .Range("F2:F" & dl) 'définit la plage pl
For Each cel In pl 'boucle sur toutes les celllules cel de la plage pl
dico(Left(cel.Value, 6)) = "" 'alimente le dictionnaire avec les 6 premiers caractères de chaque cellule
Next cel 'prochaine cellule de la boucle
temp = dico.keys 'récupère les valeurs du dictionnaire sans doublon
For i = 0 To UBound(temp) 'boucle sur toutes les valeurs sans doublons
.Cells(6 + i, 19).Value = temp(i) 'place la valeur dans la colonne O à partor de la ligne 7
Next i 'prochaine valeur de la boucle
End With 'fin de la prise en compte de l'onglet "Feuil1"
End Sub
merci d'avance et a bientôt