Modifier Macro en procédure

Bonjour le Forum,

J'ai une interrogation qui va surement sembler très basique pour certains mais j'ai essayé plusieurs codes sans succès.

J'ai une macro, qui copie les données de la colonne A vers la colonne B que voici :

Sub recopie()
With Sheets("Feuil1")
Range("b2:b65555").ClearContents
Range("a2:a65555").Copy
Range("b2").PasteSpecial Paste:=xlPasteValues, operation:=xlNone, skipblanks:=False, Transpose:=False
Application.CutCopyMode = False

End With

End Sub

Ce que j'aurai aimé c'est lorsqu'une modification est apportée à ma feuille 1 que ça copie automatiquement. J'ai mis mon code dans

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Sheets("Feuil1")
Range("b2:b65555").ClearContents
Range("a2:a65555").Copy
Range("b2").PasteSpecial Paste:=xlPasteValues, operation:=xlNone, skipblanks:=False, Transpose:=False
Application.CutCopyMode = False

End With

End Sub

Mais ça ne fonctionne pas du tout, ça me plante même le système car j'ai l'impression que ça me calcule mes 65555 lignes.

Je tiens à préciser que je ne veux pas m'arrêter à un nombre de cellules. C'est un tableau qui est en constante évolution, et je ne veux pas risquer d'oublier d'allonger mes sélections.

Merci pour l'aide apportée.

Bonjour.

La constant évolution se fait-elle cellule par cellule ?

Je veux dire que les modifications apportées sont ponctuelles et ne "touchent" qu'une cellule ou bien c'est un gros paquet de nouvelles données qui déboule dans la colonne A ?

À part de la gestion d'évènements, je ne sais pas trop.

Mon tableau est une extraction SharePoint qui est actualisé à chaque ouverture ou à la demande. C'est un gros paquet qui arrive à chaque actualisation, de la colonne A à la colonne BP

J'ai donné l'exemple de la colonne A vers la colonne B, car je pensais modifier par la suite toute seule ce code. Mais en fait, c'est la colonne G que je veux copier vers la colonne BR.

Merci pour votre aide.

Bonjour,

Je n'ai malheureusement pas progressé depuis mon post. J'ai trouvé un collage ci-dessous, mais mon problème est que ma colonne à copier est en format texte et que je veux qu'elle soit en format "standard" afin de pouvoir, par la suite, faire un SOMMEPROD.

J'ai essayé de mettre value au bout du code, mais rien n'y fait.

Svp quelqu'un pour m'aider ?

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

Feuil11.Columns("g").Copy Destination:=Feuil11.Columns(70)
Feuil11.Columns("B").Copy Destination:=Feuil11.Columns(71)

End Sub

J'ai également tenté ce code, mais là il mets un temps fou pour s'exécuter.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

For n = 1 To Range("A65536").End(xlUp).Row
Range("Br" & n) = Range("B" & n).Value
Range("BS" & n) = Range("G" & n).Value

End Sub
Rechercher des sujets similaires à "modifier macro procedure"