Exporter une ligne vers une autre feuille.

Finit0 Messages postés 11 Statut Membre -  
ccm81 Messages postés 11033 Statut Membre -
Bonjour,

Voici mon problème, j'aimerai trouvai un moyen d'exporter une ligne complète vers une autre feuille.

Malheureusement je ne vous parle pas d'un simple copier coller. J'aimerai si possible quant j'inscris le mot "validation" dans une colonne que la ligne où le mot est inscrit soit transféré vers une autre feuille.

Par exmple :

Si "validation" en G2
Alors la ligne 2 aille à la feuille numéro 2 ranger sur la première ligne. et les suivantes aillent en dessous.

En espérant que j'ai pu exposer mon problème clairement...

Merci d'avance.

9 réponses

ccm81 Messages postés 11033 Statut Membre 2 434
 
re

le même en commenté

' procedure activée des un changement dans la feuille 1
' target est la cellule (cible) qui a changé dans la feuille 1
Private Sub Worksheet_Change(ByVal Target As Range)
Dim li1 As Long, li2 As Long
' si la cible contient plusieurs cellules on arrete tout
If Target.Count > 1 Then Exit Sub
' si la cible est dans la colnne G on continue
If Not Intersect(Target, Range("G:G")) Is Nothing Then
  ' si la cible = "validation" on y va
  If Target.Value = "validation" Then
    ' li1 est la ligne de la cible (feuille 1)
    li1 = Target.Row
    ' li2 est la premiere ligne non vide de la feuille 2
    li2 = Sheets(2).Range("A" & Rows.Count).End(xlUp).Row + 1
    ' copie de la ligne li1 de la feuille 1 sur la ligne li2 de la feuille 2
    Sheets(1).Range("A" & li1).EntireRow.Copy Sheets(2).Range("A" & li2)
  End If
End If
End Sub

RQ. si tu supprimes une "validation" dans la feuille 1, ça ne supprime pas la ligne en feuille 2 !!!

bonne suite
2
Finit0 Messages postés 11 Statut Membre
 
J'ai integrer le code à mon excel et cela marche parfaitement merci ! Une dernière chose peut-on faire disparaitre la ligne de la feuille 1 une fois qu'il y a écrit validation ? (comme une téléportation intégral de la ligne vers la feuille 2)
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
bonjour

un essai avec ce que j'ai compris
https://www.cjoint.com/?0BuqWWlnoHJ

bonne suite
0
Finit0 Messages postés 11 Statut Membre
 
C'est exactement que je souhaite ! Peux-tu m'expliqué en deux trio ligne comment tu as fait si possible ^^
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
re

juste avant le 1° end if tu ajoutes

' suppression de la ligne li1 de la feuille 1 
Sheets(1).Rows(li1).Delete

RQ1. tu testes sur une copie de ton classeur avant ....
RQ2. si c'est fini, tu mets le pb à résolu

bonne suite
0
Finit0 Messages postés 11 Statut Membre
 
Alors j'ai un problème quant la ligne va sur l'autre feuille elle ne se met pas en dessous elle supprime la première ligne...

Veux-tu que je t'envoi mon xls ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ccm81 Messages postés 11033 Statut Membre 2 434
 
re,

et avant la dernière modif?
le code au cas où...
Private Sub Worksheet_Change(ByVal Target As Range)
Dim li1 As Long, li2 As Long
If Target.Count > 1 Then Exit Sub
If Not Intersect(Target, Range("G:G")) Is Nothing Then
  If Target.Value = "validation" Then
    Application.ScreenUpdating = False
    li1 = Target.Row
    li2 = Sheets(2).Range("A" & Rows.Count).End(xlUp).Row + 1
    Sheets(1).Range("A" & li1).EntireRow.Copy Sheets(2).Range("A" & li2)
    Sheets(1).Rows(li1).Delete
    Application.ScreenUpdating = True
  End If
End If
End Sub

si ça ne marche toujours pas, envoies ton xls (format excel 2003)
0
Finit0 Messages postés 11 Statut Membre
 
je fais les motifs et je te l'envoie apres si cela ne marche toujours pas .
0
Finit0 Messages postés 11 Statut Membre
 
http://cjoint.com/data3/3BvoHmbYSY8.htm

Cela ne marche toujours pas malheureusement

http://cjoint.com/data3/3BvoHmbYSY8.htm
0
Finit0 Messages postés 11 Statut Membre
 
J'ai mis le dernier code sur un autre xls. Pas sur celui que je t'ai envoyé mais sa ne marche pas ^^

Merci beaucoup
0
ccm81 Messages postés 11033 Statut Membre 2 434
 
re

1. la feuille de destination est la feuille 2
2. dans la feuille 1, la colonne où on écrit "validation" est J
3. la colonne A de la feuille 1 (client) doit être renseignée
https://www.cjoint.com/?0Bvpe5YlzGL
0