recopier une ligne
#1
Accro XLPages

Inscription: 25/11/2008

Messages: 174

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 11-11-2009 06h03
bonjour a tous

dans le fichier suivant la feuille"Modèle"contien un tableau dont je voudrais que la ligne de saisie (en jaune)se recopie tant que la cellule "A11" n'indique pas "Fin de Broyage".

je vous remercie d'avance

Pièce jointe:
zip Saisie_Mod_3.zip   [ Taille: 49.19 Ko - Téléchargements: 607 ]
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#2
Accro XLPages

Inscription: 25/11/2008

Messages: 174

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 14-11-2009 10h42
Citation :
claude40 a écrit : bonjour a tous

dans le fichier suivant la feuille"Modèle"contien un tableau dont je voudrais que la ligne de saisie (en jaune)se recopie tant que la cellule "A11" n'indique pas "Fin de Broyage".

je vous remercie d'avance


bonjour a tous
je joint le fichier en xls,au cas ou!!!!!!





Pièce jointe:
zip Saisie_Mod_10.zip   [ Taille: 35.19 Ko - Téléchargements: 491 ]
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#3
Débutant XLPages

Inscription: 01/06/2007
De Liège Belgique

Messages: 12

Système d'exploitation:
PC & Mac
Version Excel utilisée:
2000, 2010, MAC 2004 & 2011
Posté le : 14-11-2009 14h30
Bonjour,

Tu dis "tant que la cellule A11 n'indique pas  "Fin de Broyage"". Mais on doit recopier la ligne où et combien de fois ?

Par ailleurs est-il nécessaire d'avoir une cellule fusionnée en A11-C11 ? le mieux est toujours d'éviter les cellules fusionnées lorsque tu fais appel à VBA.

A te relire


@+ Dan
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#4
Accro XLPages

Inscription: 23/05/2008
De La Varenne Saint-Hilaire

Messages: 356

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 14-11-2009 15h02
Bonjour Claude40, bonjour Dan,

Claude, comme disait familièrement feu ma grand-mère, tes explications sont claires comme du jus de boudin!

En repartant de ton code, et des infos que tu distilles ici et ailleurs :

bonjour a tous j'ai trouver un code en farfouillant sur le site qui semblait me convenir,je l'est tester sur une feuille excel vierge il marche corectement.mais quand je veut l'integrer a mon projet que je joint a ce message il ne fonctionne plus.quelqu'un pourrai t'il regarder la ou j'ai fait une erreur dans le code et si cela est possible de le réctifier un peu s'il vous plait.car actuellement le code fonctionne comme ceci: quand je sélectionne Av/Colle dans la liste de la cellule A11 cela me recopi la ligne en jaune complete en dessous avec les informations dedant.alors que moi je souhaiterai que sa me copie la ligne compl� en dessous mais sans les informations.l'arrêtde la recopie ne s"éffectue que une fois "Fin Broyage" séléctionner dans la liste.
merci d'avance pour votre aide

essaie peut-être comme ceci:

Private Sub Worksheet_Change(ByVal Target As Excel.Range) 'code pour copie de ligne a revoir
Dim Lg As Integer
Lg = Range("a1120").End(xlUp).Row
    If Not Intersect(Target, Range("a11:a" & Lg)) Is Nothing Then
        Application.EnableEvents = False
            If Target = "Fin Broyage" Then
                Range("A" & Lg & ":V" & Lg).Copy
                Range("a" & Lg + 1).PasteSpecial Paste:=xlPasteFormats
                    With Range("a" & Lg + 1).Validation
                     .Delete
                    End With
            End If
    End If
        Application.EnableEvents = True
        Application.CutCopyMode = False
End Sub

Bonne journée à tous,

Mth



Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#5
Débutant XLPages

Inscription: 01/06/2007
De Liège Belgique

Messages: 12

Système d'exploitation:
PC & Mac
Version Excel utilisée:
2000, 2010, MAC 2004 & 2011
Posté le : 14-11-2009 15h48
 Re,

Oulà, on va pas s'en sortir si on répond à deux demandes sur le même fil.

Pour Mth, essaie comme ceci :
Private Sub Worksheet_Change(ByVal Target As Excel.Range) 'code pour copie de ligne a revoir
Dim Lg As Integer
Lg = Range("a1120").End(xlUp).Row
    If Not Intersect(Target, Range("a11:a" & Lg)) Is Nothing Then
        Application.EnableEvents = False
            If Target = "Fin Broyage" Then
                Range("A" & Lg & ":V" & Lg).Copy
                With Range("a" & Lg + 1)
                  .PasteSpecial Paste:=xlPasteFormats
                  .clearcontents
                  End With
            End If
    End If
        Application.EnableEvents = True
        Application.CutCopyMode = False
End Sub

Pour claude, ta demande me fait penser à ce fil --> http://www.excel-pratique.com/forum/viewtopic.php?t=14086

Amicalement







@+ Dan
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#6
Accro XLPages

Inscription: 25/11/2008

Messages: 174

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 14-11-2009 19h16
re Mth bonjour Dan

effectivement c bien la que j'ai récupérer se code qui en l'essayant sur une nouvelle feuille excel fonctionne bien et quand je veut le mettre dans mon projet il ne fonctionne pas.
meme avec le code de dan sa ne me réinscrit pas une nouvelle ligne en dessous.

voila se que je voudrai pour etre plus précie dans cette ligne. je vais rentrée les résultat de controle d'un broyeur,qui brois des matiéres premiéres avec de l'eau.donc si les premier résultas ne son pas bon on rajoute,du temps de broyage ou de l'eau et on recontrole jusqu'a ce que les données que l'on trouve soit conforme avec un plan de controle.
voila le cheminement donc tant que l'on inscrit pas "fin broyage" dans la liste de la premiére case de la ligne,cela veut dire que le controle du broyeur n'était pas conforme donc qu'il y aura un autre controle d'ou une nouvel ligne.
la commande se fait avec la petite liste dans la premiere case de la ligne.
AV/Colle:rajout d'une ligne,eau:rajout d'une ligne,Rajout:rajout d'une ligne,fin broyage:aucun rajout de ligne car les controle du produit broyer est conforme.
j'espére avoir était plus clair et je reste a ta disposition pour plus de détail.

Mth j'espere que tu comprendra mieux ma démarche;je reste a ta disposition pour plus de renseignement si tu désire.
mais il faut que je te dise que étend donnée que j'avais créer se fil mardi et que je n'avait pas de réponse j'ai tenter ma chance sur un autre site qui ma répondu aussi mais sa ne fonctionne toujours pas.je m'en excuse au pret de toi mais je n'avait pas de réponse avant la tienne et comme tu ma deja souvent aider je préfére te le dire et m'en éxcuser.
en te remerciant encore et désoler dan de mettre servi de ton code.
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#7
Accro XLPages

Inscription: 23/05/2008
De La Varenne Saint-Hilaire

Messages: 356

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 14-11-2009 20h54
re,


Claude, si tu n'as pas eu de réponse plus rapide c'est que ta demande initiale était incompréhensible, comme le dit Dan plus haut, copier quoi? où? comment?
C'est visiblement le même problème sur les trois forums (ou plus ?), de nombreux contributeurs bien plus compétents que moi essaient de t'aider, mais comme tu as du mal à définir ce que tu veux, beaucoup passent du temps pour rien, et si ce n'est déjà fait tu risques d'user les meilleures volontés à la longue ... D'une manière générale essaie de bien expliquer ton besoin de façon claire et détaillée afin que les gens te comprennent.
(un effort sur l'orthographe serait également bienvenu)

Pour le reste, j'ai tenté de comprendre ce que tu voulais, et de faire le lien avec ton fichier d'origine sur lequel nous travaillons depuis le début, au risque de faire erreur je me dis que ce n'est pas forcément la ligne 11 dont tu as besoin, mais des deux lignes, qui s'insèrent autant de fois que nécessaire et ce tant que la fin de broyage n'est pas atteinte.
Je suis donc repartie du code de Dan plus haut (et des autres forumers, il y a du monde dans ce fichier ) en essayant de ne rien abîmer (le VBA et moi ça n'est pas vraiment ça...)

Il y a tout de même un hic c'est que je ne sais pas dire à VBA que dans ce cas la ligne de saisie doit être paire (afin de ne rien insérer si on saisit le numéro du boyeur), mais au cas où je te laisse déjà regarder cette ébauche et nous dire si en gros l'idée est là ou si ça n'est pas ce que tu souhaites.

Bonne soirée à tous,

mth


Pièce jointe:
zip rebelote.zip   [ Taille: 51.25 Ko - Téléchargements: 502 ]
Edité par Mth le 14/11/2009 21:32:17
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#8
Accro XLPages

Inscription: 25/11/2008

Messages: 174

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 14-11-2009 21h41
re

je te remerci vraiment beaucoup mth c'est exactement ce que je cherchai,juste une petite présentation a faire.

j'essairai de mieux m'expliquer la prochaine fois,mais si on me dit pas que personne comprend moi j'attend.je ferrai en sorte la prochaine fois d'etre plus clair,mais s'il vous plait si vous ne comprenez pas dite le moi;

merci vraiment beaucoup a tout le monde et en particulier a toi mth.j'ai enregistré aussi le message pour l'ortographe.

a bientot et merci
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#9
Accro XLPages

Inscription: 23/05/2008
De La Varenne Saint-Hilaire

Messages: 356

Système d'exploitation:
PC
Version Excel utilisée:
2010
Posté le : 14-11-2009 22h10

re,

je n'ai pas fait grand chose là dedans mais merci claude40 pour ton retour, du coup j'ai continué à chercher pour que la macro ne se déclenche que sur les lignes paires et pas toutes les cellules de la colonne A:

Private Sub Worksheet_Change(ByVal Target As Range) 'code pour copie de ligne a revoir
Dim Lg As Integer
Lg = Range("a15").End(xlUp).Row
    If Not Intersect(Target, Range("a11:a" & Lg)) Is Nothing And Target.Row Mod 2 = 0 Then
        Application.EnableEvents = False
            If Target <> "Fin Broyage" Then
                Range("A" & Lg - 1 & ":V" & Lg).Copy
                Range("A" & Lg + 1).Insert Shift:=xlDown
                Range("A" & Lg + 1 & ":V" & Lg + 2).ClearContents
            End If
    End If
        Application.EnableEvents = True
        Application.CutCopyMode = False
End Sub


j'ai ajouté ce qui est en rouge, je ne sais pas si c'est bien mais ça a l'air de fonctionner de mon coté (cela consiste à prendre le numéro de ligne et le diviser par 2, pour voir si la division tombe juste ou s'il y a un reste )

Bonne soirée,

mth


Pièce jointe:
zip rebelote2.zip   [ Taille: 50.09 Ko - Téléchargements: 533 ]
Edité par Mth le 15/11/2009 10:57:40
Hors Ligne
Rapport   Haut 

Re: recopier une ligne
#10
Accro XLPages

Inscription: 25/11/2008

Messages: 174

Système d'exploitation:
PC
Version Excel utilisée:
2007
Posté le : 15-11-2009 10h00
bonjour mth,le forum

ton code marche bien aussi, a un détails prét,dans la ligne recopier sa me recopie bien les petites listes qui se trouve dans les cellules A12 et G11.mais sa ne me recopie pas les formules qui se trouve dans les cellules:M11,P11,S11 et une que je vais rajouter en V11.

un autre détails si je ne te derange pas trop,c'est étant donnée que les contrôles a la suite apartienne toujours au meme broyeur,pourrait on recopier dans la nouvel ligne les valeurs des cellules:A11,B11,C11.qui corespondent au ,Numero,type et numéro dans la série du broyeur.donc reste les meme du dédut a la fin du broyage.

excuse moi de te resoliciter

claude
Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes