Ma macro fonctionne différemment sur le PC de ma collègue

Bonjour à tous !

Je fais face à un bug inédit avec une macro VBA que j'ai créée : par moments elle fonctionne différemment sur le PC de ma collègue par rapport au mien (mais pas systématiquement).

En gros, l'erreur se fait sur la ligne de code ci-dessous, qui est censée remplacer les cases de la colonne G qui contiennent "20" par "A SUPPRIMER" :

Selection.Replace What:="20", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Cette ligne de code fonctionne systématiquement sur mon PC, et fonctionnait également sur le PC de mon ancien collègue. Mais sur le PC de sa remplaçante, parfois cette ligne fonctionne correctement, et parfois non. Quand elle ne fonctionne pas correctement, elle remplace les données de toute la feuille, et non pas celles de la colonne G uniquement.

Est-ce que vous avez déjà rencontré un bug similaire ? Avez-vous une idée de ce à quoi ça peut être dû (paramétrage d'Excel, version différente d'Excel, manipulation différente du fichier) ?

Merci pour votre aide !

bonjour,

peux-tu nous mettre a minima tout le code de la macro ?

sur base du bout de code que tu as mis, le replacement se fait sur toutes les cellules sélectionnées. Tout dépend donc de comment se fait cette sélection de cellules. Est-elle automatique ? est-elle manuelle ?( dans ce dernier cas, c'est l'explication : les cellules sélectionnées ne sont pas correctes).

Voici le code de la fonction (si ce n'est pas suffisant pour cerner le problème, n'hésitez pas à me le dire et je mettrai le code complet) :

Function Typo_naming()

' Permet de remplacer les Sub typo par des libellé définis

Sheets("Insérer la data ici").Select

Dim i As Integer

'Copie-colle les combinaisons typo-subtypo en valeurs

Columns("G:G").Select

Selection.Copy

Range("G1").Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

'Attribue les noms de typo corrects en fonction de la combinaison Typ Subtypo

Range("G:G").Activate

Selection.Replace What:="480", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="500", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5076", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5077", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5080", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="510", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5176", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5177", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5180", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5263", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5461", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5462", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="520", Replacement:="RMR ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5210", Replacement:="RMR ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5296", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="20", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5165", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="560", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5463", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5169", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5252", Replacement:="RMR ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5410", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="561", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5277", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="790", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="564", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="540", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5151", Replacement:="REORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5192", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5175", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="230", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="570", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="571", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="10", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5776", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5766", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="890", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="30", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5765", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="11", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="6965", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5278", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="640", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5230", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5A SUPPRIMER", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5476", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="2A SUPPRIMER", Replacement:="A SUPPRIMER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5464", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5276", Replacement:="INITIAL ORDER", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

Selection.Replace What:="5292", Replacement:="OUTLET", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

'Reprend la bonne mise en forme pour le titre et indique quelle colonne il faudra supprimer

Call Matrice_test

End Function

Merci !

Bonjour

je voie pas la colonne G

a voir

    Columns(7).Replace What:="20", Replacement:="A SUPPRIMER", LookAt:=xlPart _
        , SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False

A+

Maurice

La colonne G est sélectionnée avec cette ligne juste avant la série de selection.replace :

Range("G:G").Activate

Est-ce qu'il faut que je répète cette ligne de code avant chaque selection.replace ?

Merci !

bonjour,

Remplace cette instruction Range("G:G").Activate par range("G:G").select pour pouvoir utiliser selection. correctement par après.

Merci beaucoup ! Je vais tester avec ma collègue quand elle sera dispo et je vous dirai si ça fonctionne !

Bonjour à tous ! Ma collègue a testé la macro ce matin et elle a fonctionné !

En espérant que ça fonctionne à tous les coups désormais.

Merci beaucoup pour votre aide !!

bonjour,

merci pour ce retour.

Rechercher des sujets similaires à "macro fonctionne differemment collegue"