Double fonction rechercher-remplacer

Bonjour à tous

J'ai actuellement un problème avec une macro que j'ai fais moi même (avec l'aide de l'enregistrement d'excel).

C'est une macro de rechercher-remplacer x2.

J'ai simplement dédoublé la macro obtenue par excel en modifiant juste son fonctionnement (elles choppent la valeur affichée dans deux cellules).

Prise indépendamment, elles fonctionnent, ensemble dans mon code, la première ne fonctionne pas.

Pouvez-vous me la corriger s'il vous plait ?

Je vous remercie !

Sub Actualiser_Synthese()

' Pour la synthese, la rechercher-remplacer se fait en deux passes. S-1 et S actuelle
' A INCLURE EXCLUSIVEMENT A PARTIR DU FICHIER S02

'Macro pour STOCK S-1 via semaine precedente
    Cells.Replace What:="2015\S01", Replacement:=Sheets("calendrier").Range("D12").Value, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

'Macro pour PRODUCTION de la semaine en cours via semaine actuelle
 Cells.Replace What:="2015\S02", Replacement:=Sheets("calendrier").Range("K12").Value, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False    

End Sub

edit1 = Après plusieurs tests, pour ne pas avoir de problèmes, je dois inverser la macro comme ceci pour qu'elle fonctionne totalement. Avez-vous une idée du pourquoi ?

pour info, le fichier dans lequel j'utilise la macro existe en plusieurs exemplaires mais dans des répertoires différents et n'est appelé via des hyperliens qu'une fois à la fois (j'utilise la synthèse de la semaine précédente pour y prendre son stock, je le rappatrie dans le fichier synthese de la semaine courante).

Sub Actualiser_Synthese()

' Pour la synthese, la rechercher-remplacer se fait en deux passes. S-1 et S actuelle
' A INCLURE EXCLUSIVEMENT A PARTIR DU FICHIER S02

'Macro pour PRODUCTION de la semaine en cours via semaine actuelle
 Cells.Replace What:="2015\S02", Replacement:=Sheets("calendrier").Range("K12").Value, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False    

'Macro pour STOCK S-1 via semaine precedente
    Cells.Replace What:="2015\S01", Replacement:=Sheets("calendrier").Range("D12").Value, LookAt:=xlPart, _
        SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
        ReplaceFormat:=False

End Sub

Bonjour,

sans savoir ce qu'il y a dans D12 et K12 non on ne peut pas.

D'où l'importance déposer un fichier pour éclairer et avoir une réponse adaptée.

eric

En D12 il y a ceci d'afficher : 2015\S02

en K12 : 2015\S03

Ces valeurs changent en fonction du numéro de semaine de l'année.

D12 permet de modifier les hyperliens pour qu'ils affichent des données concernant la semaine n-1, K12 pour récupérer la production des effectifs de la semaine en cours.

Je peux mettre le fichier (qui ne comprend qu'une poignée de liens car je suis en train de tester cette méthode).

Je joints le fichier dans son arborescence de répertoire (à décompresser à la racine d'un HDD).

11zone06.7z (235.14 Ko)

Bonjour,

'Macro pour STOCK S-1 via semaine precedente
   Cells.Replace What:="2015\S01", Replacement:=Sheets("calendrier").Range("D12").Value....

Si tu mets cette partie en premier ta cellule prend la valeur de D12 : 2015\S02 et se trouve donc traitée à nouveau par la 2nde partie :

Cells.Replace What:="2015\S02"...

eric

AH oui... quel idiot !

Merci !

Rechercher des sujets similaires à "double fonction rechercher remplacer"