Import de Macro Excel

  • Initiateur de la discussion Initiateur de la discussion trankill076
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

trankill076

Guest
Bonjour,

Existe-il un moyen qui me permettrais d'utiliser une macro Excel dans n'importe quelle autre classeur que l'on ouvre avec Excel?

Ca peux paraitre con mais je suis coincé depuis un moment: que j'enregistre la Macro dans le classeur des macros perso (PERSONAL.XLSB) ou comme une macro complémentaire (.XLA), elle apparait bien dans la liste des macro mais elle ne s'éxécute pas dans le classeur actuel (elle est censée travailler sur une sélection de cellules faites sur la Feuil1 du classeur actuel)
 
Re : Import de Macro Excel

Bonjour trankill076,

Bienvenue sur XLD

C'est possible mais en l'occurrence je pense qu'il faudrait plutôt rechercher pourquoi elle ne s'exécute pas dans ton classeur actuel... et là il nous manque des éléments pour te donner des pistes

Edit : Bonjour Patrick
 
Re : Import de Macro Excel

Désolé, voila le code:

Public Sub MacroRechercheDossierScope()

Dim StringFinal As Variant
Dim NoDossier As String
Dim Dif As Integer
Dim I As Integer

I = 0
StringFinal = "number="

For Each Cell In Selection

If Feuil1.Cells(Selection.Row + I, Selection.Column) <> "" Then

NoDossier = ""

If (Len(Feuil1.Cells(Selection.Row + I, Selection.Column)) < 9 And Left(Feuil1.Cells(Selection.Row + I, Selection.Column), 1) = "Q" And IsNumeric(Right(Feuil1.Cells(Selection.Row + I, Selection.Column), Len(Feuil1.Cells(Selection.Row + I, Selection.Column)) - 1)) = True) Or (Len(Feuil1.Cells(Selection.Row + I, Selection.Column)) < 8 And Left(Feuil1.Cells(Selection.Row + I, Selection.Column), 1) <> "Q" And IsNumeric(Feuil1.Cells(Selection.Row + I, Selection.Column)) = True) Then

If Left(Feuil1.Cells(Selection.Row + I, Selection.Column), 1) = "Q" Then

Dif = 9 - Len(Feuil1.Cells(Selection.Row + I, Selection.Column))

For J = 1 To Dif

NoDossier = NoDossier + "0"

Next

NoDossier = Left(Feuil1.Cells(Selection.Row + I, Selection.Column), 1) + NoDossier + Right(Feuil1.Cells(Selection.Row + I, Selection.Column), Len(Feuil1.Cells(Selection.Row + I, Selection.Column)) - 1)

Else

Dif = 8 - Len(Feuil1.Cells(Selection.Row + I, Selection.Column))

For J = 1 To Dif

NoDossier = NoDossier + "0"

Next

NoDossier = "Q" + NoDossier + CStr(Feuil1.Cells(Selection.Row + I, Selection.Column))

End If

StringFinal = StringFinal + Chr(34) + NoDossier + Chr(34) + " or number ="

End If

I = I + 1

Else

I = I + 1

End If

Next

If StringFinal = "number=" Then

MsgBox ("Aucune des cellules selectionnées ne contient de numéro de dossier")

Else

StringFinal = Left(StringFinal, Len(StringFinal) - 12)

Feuil1.Cells(1, 1).WrapText = False
Feuil1.Cells(1, 1) = StringFinal
Feuil1.Cells(1, 1).Copy

End If

End Sub
 
Re : Import de Macro Excel

Ca a bien fonctionné
Galérer aussi longtemps sur quelque chose d'aussi simple, des fois j'me sens très con -_-"

Merci beaucoup pour l'info, ça va m'aider dans pas mal de cas ^^
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

A
  • Résolu(e)
Réponses
4
Affichages
882
E
Réponses
1
Affichages
709
P
Réponses
1
Affichages
994
Ptrs32
P
S
Réponses
10
Affichages
4 K
Sylvain29
S
G
Réponses
11
Affichages
3 K
G
A
Réponses
2
Affichages
1 K
AlbertReporter
A
Retour