Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

déclencher événement en fonction de la saisie de cellule d'une c ol

2 réponses
Avatar
solajoer
Bonjour à tous,
Comment déclencher un événement en fonction de la saisie de cellule d'une
colonne?
Plus précisemment,
Dans un "Classeur1", il y a deux onglets"feuil1" et "feuil2".
Dans "feuil1", il y a 3 colonnes "Titi", "Toto"et "Statut"; lorsque sur une
ligne quelconque une cellule de la colonne "Statut" prend la valeur
"terminée" je souhaite que la ligne en question soit déplacée dans l'onglet
"feuil2".
L'onglet "feuil2" recevra donc automatiquement toutes les lignes de l'onglet
"feuil1" dont le champ "feuil2" aura pris la valeur "terminée".
Pouvez vous m'aider à construire cette fonctionnalité S.V.P.
--
eb

2 réponses

Avatar
LSteph
Bonjour,
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iSect As Range, this As String
Set iSect = Intersect(Target, Columns(3))
If iSect Is Nothing Then Exit Sub
Application.EnableEvents = False
Application.ScreenUpdating = False
For i = iSect.Count To 1 Step -1
With iSect
If .Cells(i) Like "terminée" Then
this = .Cells(i).Row
.Cells(i).EntireRow.Cut _
(Worksheets("Feuil2").[a65536].End(xlUp)(2))
Rows(this).EntireRow.Delete
End If
End With
Next
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

'lSteph
"solajoer" a écrit dans le message de
news:
Bonjour à tous,
Comment déclencher un événement en fonction de la saisie de cellule d'une
colonne?
Plus précisemment,
Dans un "Classeur1", il y a deux onglets"feuil1" et "feuil2".
Dans "feuil1", il y a 3 colonnes "Titi", "Toto"et "Statut"; lorsque sur
une
ligne quelconque une cellule de la colonne "Statut" prend la valeur
"terminée" je souhaite que la ligne en question soit déplacée dans
l'onglet
"feuil2".
L'onglet "feuil2" recevra donc automatiquement toutes les lignes de
l'onglet
"feuil1" dont le champ "feuil2" aura pris la valeur "terminée".
Pouvez vous m'aider à construire cette fonctionnalité S.V.P.
--
eb


Avatar
solajoer
Celà fonctionne exactement comme je le souhaite, parfait !!
Merci beaucoup pour votre précieuse aide.
--
eb



Bonjour,
Private Sub Worksheet_Change(ByVal Target As Range)
Dim iSect As Range, this As String
Set iSect = Intersect(Target, Columns(3))
If iSect Is Nothing Then Exit Sub
Application.EnableEvents = False
Application.ScreenUpdating = False
For i = iSect.Count To 1 Step -1
With iSect
If .Cells(i) Like "terminée" Then
this = .Cells(i).Row
.Cells(i).EntireRow.Cut _
(Worksheets("Feuil2").[a65536].End(xlUp)(2))
Rows(this).EntireRow.Delete
End If
End With
Next
Application.ScreenUpdating = True
Application.EnableEvents = True
End Sub

'lSteph
"solajoer" a écrit dans le message de
news:
Bonjour à tous,
Comment déclencher un événement en fonction de la saisie de cellule d'une
colonne?
Plus précisemment,
Dans un "Classeur1", il y a deux onglets"feuil1" et "feuil2".
Dans "feuil1", il y a 3 colonnes "Titi", "Toto"et "Statut"; lorsque sur
une
ligne quelconque une cellule de la colonne "Statut" prend la valeur
"terminée" je souhaite que la ligne en question soit déplacée dans
l'onglet
"feuil2".
L'onglet "feuil2" recevra donc automatiquement toutes les lignes de
l'onglet
"feuil1" dont le champ "feuil2" aura pris la valeur "terminée".
Pouvez vous m'aider à construire cette fonctionnalité S.V.P.
--
eb