Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

comment exécuter cette macro ?

  • Initiateur de la discussion Initiateur de la discussion wooddy
  • 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 !

W

wooddy

Guest
Bonjour,
J'ai un petit soucis avec excel j'ai un tableau "echeancier" aux quel j'affecte un lot dans la colonne L je cherche une macro qui me permet d'extraire les données de la feuil echeancier et les envoyer vers la feuil "chèque encaissés" pour les lignes ou L n'est pas vide je veux supprimer les données de la feuilles et les envoyé vers l'autre après avoir rempli la colonne L
je dispose deja de cette macro mais je n'arrive pas à l'exécuter !! comment je dois faire (sachant que j'ai une autre macro1 dans le même classeur)
je vous met la macro et la PJ

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count > 1 Then Exit Sub
If Target.Column <> 12 Or Target.Row = 1 Or Target = "" Then Exit Sub
Dim DerLigne As Integer
With Sheets("chèques encaissés ")
DerLigne = .Range("A" & Rows.Count).End(xlUp).Row + 1
.Range("A" & DerLigne & ":K" & DerLigne).Value = Range("B" & Target.Row & ":L" & Target.Row).Value
End With
Application.EnableEvents = False
Rows(Target.Row).Delete
Application.EnableEvents = True
End Sub
 

Pièces jointes

Re : comment exécuter cette macro ?

Bonjour wooddy!

J'ai essayé de résoudre ton problème mais je ne suis pas moi-même une grande experte excel!

J'espère bien avoir saisi ton souci. J'ai utilisé l'enregistrement de macro, j'ai mis un nbre dans la cellule L2 de l'échéancier puis je suis allée dans la feuille "chèques encaissés" et j'ai inséré une formule = L2 de la feuille échéancier. Enfin j'ai supprimé la valeur de la cellule L2 échéancier.

J'ai obtenue la macro suivante :


Sub Macro2()
'
' Macro2 Macro
'

'
Sheets("chèques encaissés ").Select
Range("K2").Select
ActiveCell.FormulaR1C1 = "='echeancier '!RC[1]"
Range("K3").Select
Sheets("echeancier ").Select
Range("L2").Select
Selection.ClearContents
End Sub


Je pense que tu dois la retravailler afin qu'elle s'apllique à toutes les lignes et non à la ligne 2 uniquement.
J'ai créé un bouton afin de l'exécuter.

En espérent t'avoir un petit peu aidé,
Cordialement,

Jenn
 
Re : comment exécuter cette macro ?

Hi Excel_lents, woody & Jenn,
Private Sub Worksheet_Change(ByVal Target As Range)
Est une macro qui se déclenche à l'évènement 'Worksheet_Change', ce code doit donc être placé sur le code de l'onglet concerné dans le VBA Project // et non pas dans un module.

Pour l'évaluer tu peux la laisser en Sub Macro2(), mais il faut réadapter tous les appels à la variable Target, et la lancer avec un bouton par ex.
 
Re : comment exécuter cette macro ?

au fait je ne sais comment insérer cette macro sachant que j'ai une autre dans le classeur est ce que vous pouvez me dire comment je dois faire
merci pour l'aide
 
- 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

  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
1 K
Réponses
9
Affichages
509
Réponses
4
Affichages
588
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…