Changement automatique de cellule dans une macro

2suiviactions.xlsx (10.48 Ko)

Bonjour à tous,

Je me permets de vous solliciter car mes recherches à ce sujet sont vaines jusqu'à maintenant.

Chaque semaine, je dois relever une série de valeurs variables (voir fichier PJ). Ces valeurs sont définies dans des cellules fixes.

Ce travail est très long et fastidieux.

J'aimerais créer une macro excel me permettant de relever ses valeurs et de les coller en face de la semaine correspondante.

J'arrive à créer la macro de base qui copie B4 et colle spécialement (juste la valeur) en F3, puis A4 est copié et collé en G3 etc.

C'est la qu'arrive le problème: lorsque je me place en F4 ( pour le relevé des données de la semaine à venir) et que j'exécute la macro, elle écrase et remplace les précédentes données de F3 à N3.

J'ai conscience de ce défaut, dans mon code, je sélectionne de base La cellule ou sera collé le texte (F3), ce qui fait qu'à chaque fois que j'exécute la macro, la nouvelle valeur se trouvant dans B4 sera ainsi collée dans F3.

J'aimerais savoir si il existe une fonction permettant "l'incrémentation de la cellule" sur une même colonne (càd F3 par défaut, mais des que j'utilise la macro, F3 (3;6) se change en F4(4;6) pour la prochaine utilisation de la macro).

Je ne pense pas utiliser les termes exacts, ce pourquoi je ne trouve probablement pas de réponse à mes questions, j'espère quand même que mes indications écrites permettent de bien comprendre mon problème.

N'hésitez pas à me contacter si vous ne comprenez pas certains points.

Je vous transmets un fichier pour illustrer mes dires ainsi que la macro que j'ai jusqu'à présent et je vous mets un court extrait du code que j'ai essayé de faire.

Merci à vous

Sub relevé()
'
' relevé Macro
'

'
    Range("B4").Select
    Selection.Copy
    Range("F3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A4").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("G3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("C4").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("I3").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
End Sub

Salut ,

Peux tu mettre aussi un extrait du fichier que nous puissions voir comment il s'articule ?

Bonne journée,

bonjour à tous,

si j'ai bien compris, copie les données en ajoutant une ligne avec la date de copie.

Sub relevé()
    With Sheets("suivi actions")
        dl = .Cells(Rows.Count, 5).End(xlUp).Row + 1 'première ligne disponible
        .Cells(dl, 5) = Date ' colonne e
        .Cells(dl, 6) = .Range("B4") ' colonne f
        .Cells(dl, 7) = .Range("A4") ' colonne g
        .Cells(dl, 8) = .Range("B4") + .Range("A4") ' colonne h
        .Cells(dl, 9) = .Range("C4") ' colonne i
        .Cells(dl, 10) = .Range("B9") ' colonne j
        .Cells(dl, 11) = .Range("A9") ' colonne k
        .Cells(dl, 12) = .Range("B9") + .Range("A9") ' colonne l
        .Cells(dl, 13) = .Range("B14") ' colonne m
        .Cells(dl, 14) = .Range("A14") ' colonne n
        .Cells(dl, 15) = .Range("B14") + .Range("A14") ' colonne o
    End With
End Sub

Bonjour h2so4,

J'ai essayé de migrer ton code vers mon fichier et il a marché parfaitement!

Je te remercie pour ta rapidité et ta solution construire en adéquation avec mon problème.

Girodo, je te remercie aussi pour l'intérêt que tu as porté à mon égard.

C'est la que je me rends compte que j'en ai encore énormément à apprendre sur les macro et sur excel en général.

Merci à vous et très bonne fin de journée!

Rechercher des sujets similaires à "changement automatique macro"