Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2010 copier une ligne avec condition

mobenjilali

XLDnaute Occasionnel
bonjour
j'ai le fichier ci-joint qui me permet de copier-coller des données vers vers un tableau.
le problème si je rentre le numéro de semaine de 1 à 9 dans la cellule "AD3", la condition de copier coller n'est pas respectée
exemple:
si je rentre N° semaine " 21" dans la cellule "AD3" et je lance la macro les données sont envoyer sur la bonne ligne, et si je lance de suite la macro pour N° de semaine "2 "les données seront envoyer sur la ligne 22, 23 etc..

j'ai besoin d'un bout de code pour envoyer les donnes sur le bon N° de semaine
merci à vous
-------------------------------------------------
Sub CONSO()
ActiveWorkbook.RefreshAll
Sheets("TCD").Select
Range("AD3:Au3").Copy
Sheets("TB").Select
Cells.Find(What:=Sheets("TCD").Range("AD3"), After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, Skipblanks _
:=False, Transpose:=False


ActiveWorkbook.Save
MsgBox ("Données ajoutées au récap")

End Sub
 

Pièces jointes

  • Test 3.xlsm
    40.8 KB · Affichages: 6

Staple1600

XLDnaute Barbatruc
Bonjour le fil,

J'utiliserai ce type de syntaxe si j'étais moi
Test OK sur ton fichier exemple

Je te laisse tester sur ton PC
VB:
Sub test()
Dim f As Worksheet, nsem, plage As Range, x
nsem = Sheets("TCD").[AD3]
Set f = Sheets("TB")
Set plage = f.Columns(1)
x = Application.Match(nsem, plage, 0)
If Not IsError(x) Then
f.Cells(CLng(x), 2).Resize(, 17).Value = Sheets("TCD").[AE3:AU3].Value
End If
End Sub
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…