Mettre les lignes à la suite

romain__54 Messages postés 32 Statut Membre -  
romain__54 Messages postés 32 Statut Membre -
Bonjour,

Je présente mon fichier vite fait.
Dans une première feuille j'ai une liste en ligne de tous les véhicules avec km, entretien, imatriculation ...... toutes les infos que j'ai besoin.
Dans cette même feuille la premiere colonne et vide et dans je met un "X", toute la ligne est copié et mise en forme dans la feuille 2.
Mon soucis c'est que je voudrais en selectionner plusieurs et qui'il se mettre a la suite sur ma feuille 2, pour le moment chaque ligne se copie bien mais celle que je ne selectionne pas ce me fais une ligne blanche.!!!!

Merci d'avance pour votre aide

8 réponses

Mike-31 Messages postés 18398 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Salut,

Pas très compliqué mais serait il possible d'avoir un bout de ton fichier sans note confidentielles pour adapter le code à sa structure que tu peux joindre avec ce lien

https://www.cjoint.com/

clic sur le lien/parcourir pour sélectionner le fichier/Créer le lien et copie le lien généré dans un post.
je serais de retour que dans la soirée
0
romain__54 Messages postés 32 Statut Membre 1
 
0
Raymond PENTIER Messages postés 59020 Date d'inscription   Statut Contributeur Dernière intervention   17 404
 
Une fois tes copies terminées, tu appliques un filtre pour ne pas voir affichées les lignes vides !
0
romain__54 Messages postés 32 Statut Membre 1
 
Bonjour,
Oui mais ca doit-être bien possible que ca se fasse tout seul !!!!!
0

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

Posez votre question
Mike-31 Messages postés 18398 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Re,

Je suis rentré plus tard que prévue hier soir, je te regarde un code VBA, les lignes sont simplement copiées ou coupées
0
romain__54 Messages postés 32 Statut Membre 1
 
Non je ne veux rien couper
En faite ça me permet de survoler toutes les semaines le parc en mettant 1 sur les véhicules qui attirent mon attention et en sortir une liste pour les lettres en rep. Ou revision.
0
Mike-31 Messages postés 18398 Date d'inscription   Statut Contributeur Dernière intervention   5 140
 
Re,

alors voila un code à coller dans un module et à associer à un bouton, sur la feuille 1, colonne K crée une colonne contrôle afin d'éviter de copier les lignes en doubles

Sub Macro22()
Dim Lig, NbrLig, NumLig, LigFin As Long
If WorksheetFunction.CountIf(Range(Range("A2"), Range("A65000").End(xlUp)), "=X") = WorksheetFunction.CountIf(Range(Range("K2"), Range("K65000").End(xlUp)), "=transféré") Then
MsgBox "pas de donnée à transférer"
Else
Sheets("Feuille2").Activate
LigFin = Range("A65536").End(xlUp).Row + 1
NumLig = 1
With Sheets("Feuille1")
NbrLig = .Cells(65536, "A").End(xlUp).Row
For Lig = 1 To NbrLig
If .Cells(Lig, "A").Value = "X" And Cells(Lig, "K").Value <> "transféré" Then
.Cells(Lig, "A").EntireRow.Copy 'Cut
NumLig = NumLig + 1
Cells(LigFin, 1).Select
LigFin = LigFin + 1
ActiveSheet.Paste
End If
If .Cells(Lig, "A").Value = "X" Then
.Cells(Lig, "K") = "transféré" 'Cut
MsgBox ("Données copiées")
End If
Next
End With
Cells(ActiveCell.Row, 1).Select
Application.CutCopyMode = False
End If
End Sub

0
romain__54 Messages postés 32 Statut Membre 1
 
Bonjour,
Alors nickel, j'ai testé ca avec un peu de retard c'est sur mais bon !!!!!!!!!!!!!
Si je peux etre un poil exigent est il possible d'optimiser deux points ???

1: en faite je voudrais qu'il commence a copier à la ligne 16 !!!!! Pourquoi ? ben parce que j'ai une en tete qui est a mettre .

2: et ma deuxieme serait de ne pas copier la ligne complete mais plutot les cellules par exemple C , E et G de la ligne et de pouvoir les mettre dans les cellules B, D et F de la ligne en feuille 2 !!!!!

Merci d'avance mais c'est pour avoir un fichier tip top
0