OVH Cloud OVH Cloud

Exécuter une macro dès qu'une cellule est remplie

6 réponses
Avatar
beatrice
Bonjour à toutes et tous,
je voudrais savoir s'il était possible de dire à une macro (qui insère une
nouvelle ligne en dessous de la précédente) de s'éxécuter à chaque fois
qu'une cellule de la colonne C, par exemmple, est remplie. Comment faut-il
que je fasse ?
Merci d'avance.
Béatrice

6 réponses

Avatar
AV
je voudrais savoir s'il était possible de dire à une macro (qui insère une
nouvelle ligne en dessous de la précédente) de s'éxécuter à chaque fois
qu'une cellule de la colonne C, par exemmple,


S'il s'agit d'une ligne entière et que j'ai compris la question...

Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Column <> 3 Then Exit Sub
Rows(zz.Row + 1).EntireRow.Insert
End Sub

AV

Avatar
beatrice
Rebonjour,
Je me suis mal expliquée. En fait je voudrais qu'à chaque fois que je
remplit la colonne C par exemple cela m'insère une ligne en dessous mais en
conservant les formules que j'ai dans certaines colonnes.
En fait j'ai déjà fait une macro mais il faut que je fasse exécuter la
macro à chaque fois que je veux remettre une ligne.


je voudrais savoir s'il était possible de dire à une macro (qui insère une
nouvelle ligne en dessous de la précédente) de s'éxécuter à chaque fois
qu'une cellule de la colonne C, par exemmple,


S'il s'agit d'une ligne entière et que j'ai compris la question...

Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Column <> 3 Then Exit Sub
Rows(zz.Row + 1).EntireRow.Insert
End Sub

AV






Avatar
AV
C'est pour le coup que je comprends encore moins...;-)
Je passe la main ...

AV
Avatar
beatrice
C'est pas grave. Je crois que je me prend trop la tête pour pas grand chose.
Je crois que je vais abandonner la macro. De toute façon je ne suis pas très
douée avec ça.
Merci beaucoup de d'être pris la tête.
Bonne soirée
Béatrice


C'est pour le coup que je comprends encore moins...;-)
Je passe la main ...

AV





Avatar
G.W.
Bonjour,
Je ne suis pas sur d'avoir compris, mais en remplacant la ligne
(Rows(zz.Row+1).entireRox.Insert
de la réponse d' AV
par le nom de la macro que tu as déja faite, ça pourrait fonctionner ?


"beatrice" a écrit dans le message
news:
Rebonjour,
Je me suis mal expliquée. En fait je voudrais qu'à chaque fois que je
remplit la colonne C par exemple cela m'insère une ligne en dessous mais
en

conservant les formules que j'ai dans certaines colonnes.
En fait j'ai déjà fait une macro mais il faut que je fasse exécuter la
macro à chaque fois que je veux remettre une ligne.


je voudrais savoir s'il était possible de dire à une macro (qui insère
une



nouvelle ligne en dessous de la précédente) de s'éxécuter à chaque
fois



qu'une cellule de la colonne C, par exemmple,


S'il s'agit d'une ligne entière et que j'ai compris la question...

Dans le module de la feuille :
Private Sub Worksheet_Change(ByVal zz As Range)
If zz.Column <> 3 Then Exit Sub
Rows(zz.Row + 1).EntireRow.Insert
End Sub

AV








Avatar
beatrice
Bonjour,
J'ai fait ce que tu as dit et ça marche.
Merci beaucoup pour ton aide et celle de AV.
Bonne journée et bonne continuation à vous.
Béatrice