bonjour, je souhaite déplacer une ligne de donnée d'une feuille A à une feuille B
ce déplacement est soumis à condition.
il doit etre placé dans la feuille B en fonction de la date des donées
cette ligne est issue de formules, donc avec un collage normal, les valeurs renvoyées sont fausses.

voici ma macro, issue d'anciennes discutions sur ce forum

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 If ThisWorkbook.Worksheets("D OMET2").Range("S8") = 3 Then
        Dim shS As Worksheet 'Source
        Dim shD As Worksheet 'destination
        Dim rCh As Range ' date a chercher
        Dim iDest As Integer 'Ligne de destination dans feuille
 
        Set shS = ThisWorkbook.Worksheets("D OMET2") ' Feuille source
        Set shD = ThisWorkbook.Worksheets("OMET 2") ' Feuille destination
        Set rCh = shS.Range("A8") ' Cellule contenant le nom à chercher
        On Error Resume Next 'Pour éviter les messages d'erreur sur recherche infructueuse
 
        iDest = Application.WorksheetFunction.Match(rCh, shD.Range("A:A"), 0)
        On Error GoTo 0
 
         shS.Range("A8:R8").Copy shD.Cells(iDest, "A")
 
 
        Worksheets("D OMET2").Range("B5:S5").ClearContents
        Worksheets("D OMET2").Range("B6:S6").ClearContents
        Worksheets("D OMET2").Range("B7:S7").ClearContents
quelqu'un aurai t'il une idée de la façon de modifier la commande de collage
Code : Sélectionner tout - Visualiser dans une fenêtre à part
shS.Range("A8:R8").Copy shD.Cells(iDest, "A")
de telle manière que seules les valeurs soient déplacées?

j'ai déjà essayé un certain nombre de commandes type PasteSpecial mais rien ne semble fonctionner

merci