Copier macro sur plusieurs ligne

Bonjour,

Je suis débutant en macro, j'ai utilisé la fonction "enregistrer une macro" pour effectuer une opération que je réalise souvent sur un tableau quand j'appuis sur un bouton de commande sur une ligne. Le problème c'est que je dois faire environs 60 bouton et j'ai un peu la flemme de changer la formule 60 fois... (G3 devient G4, H3 H4 etc ...). Auriez vous une idées ? Merci d'avance.

Voici la formule :

Sub Bouton3()

'

' Bouton3 Macro

'

'

Range("G3").Select

Selection.Copy

Range("H3").Select

ActiveSheet.Paste

Range("I3").Select

Application.CutCopyMode = False

ActiveCell.FormulaR1C1 = "=auj"

Range("I3").Select

ActiveCell.FormulaR1C1 = "=TODAY()"

Range("I3").Select

Selection.Copy

Range("M3").Select

ActiveSheet.Paste

Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _

, SkipBlanks:=False, Transpose:=False

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

:=False, Transpose:=False

Range("M3").Select

Application.CutCopyMode = False

Selection.Cut

ActiveWindow.ScrollColumn = 9

ActiveWindow.ScrollColumn = 8

ActiveWindow.ScrollColumn = 7

ActiveWindow.ScrollColumn = 6

ActiveWindow.ScrollColumn = 4

ActiveWindow.ScrollColumn = 3

ActiveWindow.ScrollColumn = 1

Range("I3").Select

ActiveSheet.Paste

Range("B3:H3").Select

Range("H3").Activate

With Selection.Font

.ThemeColor = xlThemeColorLight1

.TintAndShade = 0

End With

End Sub

Bonjour,

Avant d'envisager le traitement de plusieurs lignes, je pense que la macro doit être optimisée. Mais il faudrait déjà être sûr de ce que vous voulez faire pour une ligne.

Ce que j'ai cru comprendre:

  • copier G3 dans H3
  • mettre en "dur" la date du jour en I3 et M3
  • appliquer un thème en B3:H3

Pour l'automatisation sur plusieurs lignes:

comment seront définies les lignes à traiter :

faut-il prendre de la ligne 3 à la dernière ligne ?

ou bien ...?

A+

Bonjour,

il n'est pas nécessaire de sélectionner une cellule pour la copier ou d'y mettre une formule,

voici un exemple

Range("G3").Copy Range("H3")
Range("I3").Formula = "=TODAY()"

Bonjour

Désolée les amis...0n s'est croisé

Je viens de voir ce que tu as fait...pas beau l'enregistrement de macro aide, mais il faut ensuite alléger

trop de select...à corriger

Et là ???

Range("I3").Copy Range("M3")
Range("M3").Cut Range("I3")

Tu copies I3 dans M3 puis tu coupes M3 pour le remettre dans I3....

En bref, je ne comprend pas ce que tu veux faire..

Peux-tu mettre un fichier exemple et expliquer quel est ton résultat souhaité ?

De toute manière pour ne pas répéter 60 fois, tu fais une boucle qui part de 3 pour aller jusqu'où tu veux...

Bon courage

Rechercher des sujets similaires à "copier macro ligne"