Classeur macros personnelles

nat54

XLDnaute Barbatruc
Bonjour,

J'ai appris aujourd'hui que ca existait :D

Je voulais donc mettre mes macros (que je garde sous word) dedans

Avec outils/macros/nouvelle macro
ca lance l'enregistreur..
Alors que moi la macro est déjà écrite ..

J'avais donc testé en faisant
outils/macros/nouvelle macro
Aller sur l'éditeur, ouvrir un module, coller ma macro

Code:
[FONT=Arial] [/FONT]
[FONT=Arial]Sub ENLEVER_DOUBLONS()[/FONT]
[FONT=Arial]ListeValUniques Range("A2:A5000"), Range("E1")   [/FONT][COLOR=teal][FONT=Arial]‘ on met la liste en colonne 1, la liste épurée se colle en colonne E[/FONT][/COLOR][FONT=Arial][/FONT]
[FONT=Arial]End Sub[/FONT]
[FONT=Arial] [/FONT]
[FONT=Arial]Sub ListeValUniques(PlageSrc As Range, CellDest As Range)[/FONT]
[COLOR=teal][FONT=Arial]'Extrait les valeurs uniques d'une colonne et les renvoie[/FONT][/COLOR]
[COLOR=teal][FONT=Arial]'dans une autre, à partir de CellDest[/FONT][/COLOR][FONT=Arial][/FONT]
[FONT=Arial]Dim Arr1, Elt, Arr2(), Coll As New Collection[/FONT]
[FONT=Arial] [/FONT]
[FONT=Arial]If PlageSrc.Columns.Count > 1 Then Exit Sub[/FONT]
[FONT=Arial]Arr1 = PlageSrc.Value[/FONT]
[FONT=Arial] [/FONT]
[FONT=Arial]For Each Elt In Arr1[/FONT]
[FONT=Arial]On Error Resume Next[/FONT]
[FONT=Arial]Coll.Add Elt, CStr(Elt)[/FONT]
[FONT=Arial]If Err.Number = 0 Then[/FONT]
[FONT=Arial]ReDim Preserve Arr2(1 To Coll.Count)[/FONT]
[FONT=Arial]Arr2(Coll.Count) = Elt[/FONT]
[FONT=Arial]End If[/FONT]
[FONT=Arial]On Error GoTo 0[/FONT]
[FONT=Arial]Next[/FONT]
[FONT=Arial] [/FONT]
[FONT=Arial]CellDest.Resize(Coll.Count).Value = _[/FONT]
[FONT=Arial]Application.Transpose(Arr2)[/FONT]
[FONT=Arial] [/FONT]
[FONT=Arial]End Sub[/FONT]


Maintenant quand je fais alt F8 ya bien
perso.xls!enlever_doublons

Mais quand je la laisse sur un classeur test,
rien ne se passe

Pourtant le but est bien de pouvoir utiliser la macro quelque soit le fichier, non ?
 

SergiO

XLDnaute Accro
Re : Classeur macros personnelles

Bonjour Nat54,

Tu dois enregistrer ta macro dans un module du fichier perso.xls.

C'est le fichier qui est ouvert au démarrage d'Excel.

S'il n'existe pas , tu enregistres en automatique dans Classeur de macros personnelles un bout de code pour que ce fichier se crée puis tu auras accès par Alt F11 pour coller ton code.

Bon cour@ge
 

Discussions similaires

Statistiques des forums

Discussions
312 755
Messages
2 091 707
Membres
105 053
dernier inscrit
HAMOUD