Modification code VBA

  • Initiateur de la discussion Initiateur de la discussion tbuhagiar
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

T

tbuhagiar

Guest
Bonjour à tous,

Novice dans le vba, je souhaite modifier mon code pour lui indiquer d'étendre la formule pour répliquer une formule sur les lignes inférieures.

Le code est le suivant (en état, j'ai fait la manipulation sur 2 lignes mais l'idée reste de copier/coller une formule d'une ligne, et de la répliquer sur les lignes inférieures) :

"Sub Ajout_Nouveau_Client()
'
' Ajout_Nouveau_Client Macro
' Permet d'ajouter des noveaux clients
'

'Mise en forme code BCT

ActiveCell.FormulaR1C1 = "=""BCTFRP0""&+RC[1]&+""011"""
Range("C72").Select

'Formule pour rechercher coordonnées nouveau client dans fichier "nouveaux clients"

ActiveCell.FormulaR1C1 = "='[Nouveaux clients installés.xlsx]New BCT'!R2C1"
Range("C72").Select

'Suppression de la cellule figée
ActiveCell.FormulaR1C1 = _
"='[Nouveaux clients installés.xlsx]New BCT'!R[-70]C[-2]"
Range("C72").Select

'Etirement de la formule sur la ligne entière
Selection.Copy
Range("D72:N72,L77").Select
Range("L77").Activate
Range("K72").Select
Selection.End(xlToLeft).Select

'Sélection de la ligne supérieure pour copie de la mise en forme
Range("D72:N72").Select

'Copier/coller de la mise en forme sur la ligne inférieure
Selection.PasteSpecial Paste:=xlPasteFormulas, Operation:=xlNone, _
SkipBlanks:=False, Transpose:=False
Range("O72").Select
Application.CutCopyMode = False

'Ajout mention "Installé" dans colonne "statut"
ActiveCell.FormulaR1C1 = "Installé"
Range("N72").Select

'Sélection de la ligne sur laquelle il y a la mise ne forme
Selection.End(xlToLeft).Select
Selection.End(xlToLeft).Select

'Copie de la mise en forme et de la formule
Selection.Copy

'Sélection de la ligne inférieure
Range("A73").Select
ActiveSheet.Paste

'Copie de la ligne supérieure sur laquelle il faut récupérer la formule
Application.CutCopyMode = False
Range("C72:N72").Select

'Collage de la formule de la ligne supérieure, sur la ligne inférieure
Selection.Copy
Range("C73").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Range("O73").Select

'Ajout mention "Installé" dans colonne "statut"
ActiveCell.FormulaR1C1 = "Installé"



End Sub"

N.B : les commentaires que je me suis mis peuvent être mal interprétés aussi. J'ai essayé de faire au mieux avec ma compréhension du moment mais je suis preneur de commentaires à ce niveau.

D'avance, un grand merci à tous pour votre aide.

Bonne journée à tous.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
18
Affichages
597
Réponses
10
Affichages
791
Réponses
2
Affichages
399
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
2
Affichages
772
Réponses
5
Affichages
913
Retour