ldexplorer
XLDnaute Junior
Bonjour les excelliens,
Ca fait toujours plaisir de passer un petit moment avec vous et cela d'autant plus qu'en général il y a toujours quelqu'un qui connaît la réponse à votre question.
Je suis coincé. J'ai le code suivant qui me permets de copier la dernière ligne écrite dans un tableau sur une feuille nommée CE_vierge à l'aide d'un formulaire dans une feuille nommée Recap. A chaque ajout dans la feuille CE_vierge, elle remplace la ligne de la feuille Recap par la plus récente (sorte de mise à jour).
Or, je souhaite qu'elle écrive la première ligne dans la feuille Recap à la ligne A14. Ca ne marche pas, tantôt à la ligne 13,12 mais jamais je n'arrive à la ligne 14. Je ne comprends pas du tout.
Merci de m'aider. A bientôt,
Lionel
PS : je joints le classeur pour vous aider à comprendre.
Ca fait toujours plaisir de passer un petit moment avec vous et cela d'autant plus qu'en général il y a toujours quelqu'un qui connaît la réponse à votre question.
Je suis coincé. J'ai le code suivant qui me permets de copier la dernière ligne écrite dans un tableau sur une feuille nommée CE_vierge à l'aide d'un formulaire dans une feuille nommée Recap. A chaque ajout dans la feuille CE_vierge, elle remplace la ligne de la feuille Recap par la plus récente (sorte de mise à jour).
Or, je souhaite qu'elle écrive la première ligne dans la feuille Recap à la ligne A14. Ca ne marche pas, tantôt à la ligne 13,12 mais jamais je n'arrive à la ligne 14. Je ne comprends pas du tout.
Code:
Private Sub IRecap()
Dim Nom As String 'déclare la variable nom
Dim li As Integer 'déclare la variable li
Dim dest As Range 'déclare la variable dest
Nom = ActiveSheet.Range("B6").Value 'définit la variable nom
li = ActiveSheet.Range("B65536").End(xlUp).Row 'définit la variable li
With Sheets("Recap") 'prend en compte l'onglet Recap"
'boucle sur toutes les cellules éditées de la colonne A (en partant de A14)
For Each cel In .Range("A14:A" & .Range("A65536").End(xlUp).Row)
If cel.Value = Nom Then 'condition : si la valeur de la cellule est egale à nom
Set dest = cel 'définit la variable dest
GoTo suite 'va à la balise suite
End If 'fin de la condition
Next cel 'prochaine cellule de la plage
Set dest = .Range("A65536").End(xlUp).Offset(1, 0) 'définit la variable dest
dest.Value = Nom 'place le nom dans la première cellule vide rencontrée
End With
suite: 'balise
ActiveSheet.Range(Cells(li, 2), Cells(li, 6)).Copy Destination:=dest.Offset(0, 1) 'copie la ligne
End Sub
Merci de m'aider. A bientôt,
Lionel
PS : je joints le classeur pour vous aider à comprendre.