Macro avec un nom de feuille variable

c.the

XLDnaute Nouveau
Bonjour,

J'utilise une macro qui me permet d'aller chercher des informations dans une feuille "Fiche Achat" pour les coller dans une autre feuille "synthese"

La macro est la suivante :

Private Sub CommandButton1_Click()
Dim L As Integer L = Sheets("synthese").Range("a65536").End(xlUp).Row + 1
Sheets("synthese").Activate
With Sheets("synthese")
'Baker
.Range("a" & L).Value = Worksheets("Fiche Achat").Range("c9")
.Range("b" & L).Value = Worksheets("Fiche Achat").Range("c10")
.Range("c" & L).Value = Worksheets("Fiche Achat").Range("c11")
.Range("d" & L).Value = Worksheets("Fiche Achat").Range("j14")
.Range("e" & L).Value = Worksheets("Fiche Achat").Range("c14")
.Range("f" & L).Value = Worksheets("Fiche Achat").Range("c19")
.Range("g" & L).Value = Worksheets("Fiche Achat").Range("c18")
.Range("h" & L).Value = Worksheets("Fiche Achat").Range("k19")
.Range("i" & L).Value = Worksheets("Fiche Achat").Range("k18")
.Range("j" & L).Value = Worksheets("Fiche Achat").Range("a22")
.Range("k" & L).Value = Worksheets("Fiche Achat").Range("i22")

End With
End Sub

Ensuite je copie la feuille "Fiche Achat" et j'obtiens donc "Fiche Achat (2)" et ainsi desuite pour un nombre x d'achats. Du coup la macro ne fonctionne plus puisque la macro permet d'aller chercher les infos dans worksheets("Fiche Achat").
Y aurait-il un moyen pour que dans les parenthèses se mette automatiquement le nom de la feuille ouverte? Ou pour que la macro aille chercher les infos dans la feuille ouverte?
Cette macro n'est peut être plus utilisable dans ces conditions?

Merci d'avance pour votre aide que me sera d'un grand secours.
 

c.the

XLDnaute Nouveau
Re : Macro avec un nom de feuille variable

Désolé de répondre que ce matin.

En fait cette macro est associée à un bouton se situant sur la feuille "Fiche Achat" donc j'aimerais que quand je clique sur ce bouton ça soit les données de la feuille "Fiche Achat" qui se mettent dans la feuille "synthèse". J'ai la même chose sur la feuille "Fiche Achat (2)" et quand je clique sur le bouton de cette feuille j'aimerais que ça soit els données de la feuille "Fiche Achat (2)" qui se mettent dans la feuille "synthèse".

En mettant ActiveSheet dans la macro en fait ça me mets les valeurs de la feuille synthèse.

Merci pour ton aide
 

Pierrot93

XLDnaute Barbatruc
Re : Macro avec un nom de feuille variable

Bonjour,

tu as un bouton par feuille "achat" ? le code est placé où ? dans un module standard ou dans un module de feuille ? En l'état perso peux pas t'en dire plus.... mets peut être un tout petit fichier sur le forum, représentant uniquement le problème posé....

bonne journée
@+
 

c.the

XLDnaute Nouveau
Re : Macro avec un nom de feuille variable

Bonjour,

Désolé de répondre aussi tard, j'étais passé sur un autre projet.

Maintenant ça fonctionne même si je ne suis pas sur que ça soit la meilleure façon de faire. Je n'arrive pas à transmettre le fichier il est trop lourd même après réduction et je n'ai pas de quoi le zipper.
Ma macro est la suivante :

Private Sub CommandButton1_Click()
Dim L As Integer 'Déclaration de variable "L" pour connaitre la Ligne Numéro
'enregistrement dans Base pour pointage annee
'ici je repère la dernière ligne vide pour la Collections des données
L = Sheets("Synthèse").Range("a65536").End(xlUp).Row + 1
'Pour voir se qui se passe je bascule sur la feuille
'Ici c'est le report de la saisie dans la feuille
With Sheets("Synthèse")
'Baker
.Range("a" & L).Value = ActiveSheet.Range("c9")
.Range("b" & L).Value = ActiveSheet.Range("c10")
.Range("c" & L).Value = ActiveSheet.Range("c11")
.Range("d" & L).Value = ActiveSheet.Range("j14")
.Range("e" & L).Value = ActiveSheet.Range("c14")
.Range("f" & L).Value = ActiveSheet.Range("c19")
.Range("g" & L).Value = ActiveSheet.Range("c18")
.Range("h" & L).Value = ActiveSheet.Range("k19")
.Range("i" & L).Value = ActiveSheet.Range("k18")
.Range("j" & L).Value = ActiveSheet.Range("a22")
.Range("k" & L).Value = ActiveSheet.Range("i22")

End With
End Sub

J'ai un deuxième problème qui ai que j'aimerais que quand on modifie des informations dans la fiche achat, la fiche synthèse se mette à jour automatiquement soit par une macro de mise à jour soit en créant la nouvelle ligne et en supprimant l'ancienne.
J'ai essayé des macros de mise à jour et de doublons mais cela ne fonctionne pas.

Si tu as une idée.
Je te remercie pour l'aide que tu m'as déjà apporté et celle du futur.

Bonne journée
 

Statistiques des forums

Discussions
312 425
Messages
2 088 297
Membres
103 809
dernier inscrit
Joker901