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

Tranfert data feuille1 vers feuille2 si

4 réponses
Avatar
j
Bonsoir,

Il me semblait avoir cela dans mes tablettes !! mais non
voila ce que je souhaite réaliser :

j'ai en feuille1 des données de la colonne A jusqu'a Z
lorsque la colonne Z prend la valeur "ok" la ligne est transferé dans la
feuille2 avec les memes données et ainsi de suite

Merci de vos aides
Cordialement

4 réponses

Avatar
michdenis
Bonjour,

Dans le module feuille où l'action se déroule, copie cette procédure :

Dans la procédure, tu dois adapter le nom de la feuille "Feuil2"
par le nom réel de ton application.

Si au lieu de copier les données en Feuil2, tu veux transférer ces
données en feuil2, modifie "COPY" PAR CUT dans cette ligne de code :
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, R As Range, Ligne As Long
Set Rg = Intersect(Target, Range("Z:Z"))
If Not Rg Is Nothing Then
For Each C In Rg
If UCase(C.Value) = "OK" Then
With Worksheets("Feuil2")
Set R = .Range("A:Z").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious)
If R Is Nothing Then
Ligne = 1
Else
Ligne = R.Row + 1
End If
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)
End With
End If
Next
End If
End Sub
'-----------------------------------------------


MichD
--------------------------------------------
"" a écrit dans le message de groupe de discussion : 4cfffbce$0$28577$

Bonsoir,

Il me semblait avoir cela dans mes tablettes !! mais non
voila ce que je souhaite réaliser :

j'ai en feuille1 des données de la colonne A jusqu'a Z
lorsque la colonne Z prend la valeur "ok" la ligne est transferé dans la
feuille2 avec les memes données et ainsi de suite

Merci de vos aides
Cordialement
Avatar
j
Super ça marche impec
Merci
Bonne journée

"michdenis" a écrit dans le message de news:
idp7sm$obn$
Bonjour,

Dans le module feuille où l'action se déroule, copie cette procédure :

Dans la procédure, tu dois adapter le nom de la feuille "Feuil2"
par le nom réel de ton application.

Si au lieu de copier les données en Feuil2, tu veux transférer ces
données en feuil2, modifie "COPY" PAR CUT dans cette ligne de code :
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, R As Range, Ligne As Long
Set Rg = Intersect(Target, Range("Z:Z"))
If Not Rg Is Nothing Then
For Each C In Rg
If UCase(C.Value) = "OK" Then
With Worksheets("Feuil2")
Set R = .Range("A:Z").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious)
If R Is Nothing Then
Ligne = 1
Else
Ligne = R.Row + 1
End If
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)
End With
End If
Next
End If
End Sub
'-----------------------------------------------


MichD
--------------------------------------------
"" a écrit dans le message de groupe de discussion :
4cfffbce$0$28577$

Bonsoir,

Il me semblait avoir cela dans mes tablettes !! mais non
voila ce que je souhaite réaliser :

j'ai en feuille1 des données de la colonne A jusqu'a Z
lorsque la colonne Z prend la valeur "ok" la ligne est transferé dans la
feuille2 avec les memes données et ainsi de suite

Merci de vos aides
Cordialement

Avatar
j
Je vais abuser !!!
J'utilise le cut, mais il faudrait que la ligne transféré disparraise de la
feuille 1 car la elle reste vide

Merci par avance

"michdenis" a écrit dans le message de news:
idp7sm$obn$
Bonjour,

Dans le module feuille où l'action se déroule, copie cette procédure :

Dans la procédure, tu dois adapter le nom de la feuille "Feuil2"
par le nom réel de ton application.

Si au lieu de copier les données en Feuil2, tu veux transférer ces
données en feuil2, modifie "COPY" PAR CUT dans cette ligne de code :
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, R As Range, Ligne As Long
Set Rg = Intersect(Target, Range("Z:Z"))
If Not Rg Is Nothing Then
For Each C In Rg
If UCase(C.Value) = "OK" Then
With Worksheets("Feuil2")
Set R = .Range("A:Z").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious)
If R Is Nothing Then
Ligne = 1
Else
Ligne = R.Row + 1
End If
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)
End With
End If
Next
End If
End Sub
'-----------------------------------------------


MichD
--------------------------------------------
"" a écrit dans le message de groupe de discussion :
4cfffbce$0$28577$

Bonsoir,

Il me semblait avoir cela dans mes tablettes !! mais non
voila ce que je souhaite réaliser :

j'ai en feuille1 des données de la colonne A jusqu'a Z
lorsque la colonne Z prend la valeur "ok" la ligne est transferé dans la
feuille2 avec les memes données et ainsi de suite

Merci de vos aides
Cordialement

Avatar
michdenis
Si tu veux supprimer la ligne de la feuil1 que tu viens de copier
ajouter après cette ligne de code :

C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)
C.entirerow.delete

MichD
--------------------------------------------
"" a écrit dans le message de groupe de discussion : 4d0086ed$0$18591$

Je vais abuser !!!
J'utilise le cut, mais il faudrait que la ligne transféré disparraise de la
feuille 1 car la elle reste vide

Merci par avance

"michdenis" a écrit dans le message de news:
idp7sm$obn$
Bonjour,

Dans le module feuille où l'action se déroule, copie cette procédure :

Dans la procédure, tu dois adapter le nom de la feuille "Feuil2"
par le nom réel de ton application.

Si au lieu de copier les données en Feuil2, tu veux transférer ces
données en feuil2, modifie "COPY" PAR CUT dans cette ligne de code :
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)

'-----------------------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range, R As Range, Ligne As Long
Set Rg = Intersect(Target, Range("Z:Z"))
If Not Rg Is Nothing Then
For Each C In Rg
If UCase(C.Value) = "OK" Then
With Worksheets("Feuil2")
Set R = .Range("A:Z").Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious)
If R Is Nothing Then
Ligne = 1
Else
Ligne = R.Row + 1
End If
C.Offset(, -25).Resize(, 26).Copy .Range("A" & Ligne)
End With
End If
Next
End If
End Sub
'-----------------------------------------------


MichD
--------------------------------------------
"" a écrit dans le message de groupe de discussion :
4cfffbce$0$28577$

Bonsoir,

Il me semblait avoir cela dans mes tablettes !! mais non
voila ce que je souhaite réaliser :

j'ai en feuille1 des données de la colonne A jusqu'a Z
lorsque la colonne Z prend la valeur "ok" la ligne est transferé dans la
feuille2 avec les memes données et ainsi de suite

Merci de vos aides
Cordialement