Transfert automatique de lignes de cellules d'une feuille à une autre
Hors ligneLilistigri Le 20/06/2016 à 22:26 Profil de Lilistigri Configuration de Lilistigri

Bonjour à tous,

Dans le cadre de mon travail, je dois créer un classeur qui répertorie les non-conformités de la boite dans laquelle je travaille.

Il est prévu que la première feuille (SYNTHESE 2016) soit la synthèse de toutes les non-conformités et que les feuilles suivantes répertorient les non-conformités spécifiques à un service ( ex: feuille n°2 : ACH , feuille n°3: BMI etc.... il y en a douze comme ça).

Mon patron me demande de trouver un moyen pour que toutes les non-conformités entrées dans la feuille n°1: SYNTHESE 2016 soient automatiquement "rangées" dans la feuille correspondant au service qui doit la traiter.

Je ne sais pas si c'est important de le préciser mais les informations ne sont pas contenu dans une seule cellule mais dans une "ligne complète" et il faut absolument que toutes les informations de la ligne soient copiées dans l'autre feuille.

Je ne sais pas si c'est très claire.... :/

Dans le tableau de la feuille n°1, il y a une colonne (dans mon cas la colonne E) dans la-quelle on entre le service concerné. Du coup j'ai commencé à réfléchir au problème et je me suis dit qu’on pourrait partir sur une boucle du type:

--> chercher valeur dans colonne E

--> Si "ACH" copier ligne dans feuille n°2 "ACH"

--> Si non continuer

--> Si "BMI" copier ligne dans feuille n°3 "BMI"

Et ainsi de suite

Je sais pas si c'est une boucle pourrait fonctionner ou si il y a un moyen plus simple d’obtenir ce que je souhaite ; en tout cas je n’ai pas les connaissances nécessaire pour le mettre en forme.

J’ai déjà essayé avec l’outil tableau dynamique croisée mais ça n’a rien donnée.

Je suis preneuse de tout conseil ou idée qui pourrait m’aider à dompter ce classeur.

Merci de votre patience

Hors ligneLilistigri Le 21/06/2016 à 12:33 Profil de Lilistigri Configuration de Lilistigri

Je suis désolée d'insitser mais je galère vraiment sur ce classeur.

En farfouillant sur internet j'ai réussi à bidouiller ce code :

Sub classeur()
Dim i As Integer, fin As Integer

ActiveCell.SpecialCells(xlLastCell).Select

fin = ActiveCell.Row
Range("A1").Select
For i = 1 To fin
If Range("E" & i).Value = "FAB" Then
Range(i & ":" & i).Select
With Selection.Interior
Selection.Copy
Worksheets("Feuil2").Activate
Selection.PasteSpecial


End With
End If

Next
Range("A1").Select

End Sub


Avec ça j'arrive à faire ce que je veux, c'est à dire: il reconnait la ligne dans lesquels "FAB" est entré dans la colone "E" et les copie dans la feuille n°2.

Par contre il ne le fait q'une seule fois alors que j'aimerai qu'il répète l'opération jusqu'a c=la dernière ligne remplis du tableau. J'ai essayé de mettre une fonction While mais ça fait tou beuger. Je dois probablement mal la coder.

J'ai essayé avec cette syntaxe : While Range("E" & i).Value <> 0


Si il vous plait j'ai besoin d'un coup de main

Vous avez résolu votre problème avec VIC ? Faites-le savoir sur les réseaux sociaux !
Vulgarisation-informatique.com
Cours en informatique & tutoriels