Code modifié pour coller valeurs, ne fonctionne plus

Bonjour,

J'ai le code ci dessous pour coller des datas d'une feuille à une autre dans la premiere cellule vide trouvée .

Sub ExportDatasDemInterJ()
 Dim derlig As Long, dl As Long

  derlig = Sheets("Intervention J").Range("A" & Rows.Count).End(xlUp).Row + 1

   With ActiveSheet
    dl = .Range("A" & Rows.Count).End(xlUp).Row
     .Range("A2:D" & dl).Copy Sheets("Intervention J").Range("A" & derlig)
     Application.CutCopyMode = False
   End With
End Sub

Seulement je cherche à le modifier pour ne coller que les valeurs, j'ai donc modifié comme ci dessous, mais j'ai certainement fait n'importe quoi n'y connaissant rien .

Pouvez vous me dire ou est l'erreur ?

Sub ExportDatasDemInterJ()
'
' ExportDataVersInterJ Macro
' Selection et export des datas des 4 premières colonnes vers l'onglet Intervention J
'

'
 Dim derlig As Long, dl As Long

  derlig = Sheets("Intervention J").Range("A" & Rows.Count).End(xlUp).Row + 1

   With ActiveSheet
    dl = .Range("A" & Rows.Count).End(xlUp).Row
     .Range("A2:D" & dl).Copy Sheets("Intervention J").Range("A" & derlig)
     .PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
   End With
End Sub

Ca bloque sur :

.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

Merci d'avance :)

Hello,

Tu peux essayer comme ça :

Dim derlig As Long, dl As Long

  derlig = Sheets("Intervention J").Range("A" & Rows.Count).End(xlUp).Row + 1

   With ActiveSheet
    dl = .Range("A" & Rows.Count).End(xlUp).Row
     Sheets("Intervention J").Range("A" & derlig).value = .Range("A2:D" & dl).value
   End With
End Sub

La valeur d'arrivée est égale à la valeur source et hop, plus de souci !

Re Vittelfraise,

Bonjour JoyeuxNoel, le forum,

Une variante...

Sub ExportDatasDemInterJ()
 Dim derlig As Long, dl As Long

  derlig = Sheets("Intervention J").Range("A" & Rows.Count).End(xlUp).Row + 1

   With ActiveSheet
    dl = .Range("A" & Rows.Count).End(xlUp).Row
     .Range("A2:D" & dl).Copy
     Sheets("Intervention J").Range("A" & derlig).PasteSpecial Paste:=xlPasteValues, _
     Operation:=xlNone, SkipBlanks:=False, Transpose:=False
     Application.CutCopyMode = False
   End With
End Sub

Cordialement,

Alors,

Je ne sais pas pourquoi, mais le code de Joyeux Noel ne me copie/colle que la cellule A2, par contre Xorsankukai ta variante fonctionne .

J'essaie de comprendre pourquoi :)

Pour que ça marche, peut-être faut-il que les 2 plages fassent la même taille ? Je ne me souviens plus.

Re,

Pour que ça marche, peut-être faut-il que les 2 plages fassent la même taille ?

Peut-être ainsi....

Sub ExportDatasDemInterJ()
  Dim derlig As Long, dl As Long

  derlig = Sheets("Intervention J").Range("A" & Rows.Count).End(xlUp).Row + 1

    With ActiveSheet
    dl = .Range("A" & Rows.Count).End(xlUp).Row
     Sheets("Intervention J").Range("A" & derlig).Resize(dl - 1, 4) = .Range("A2:D" & dl).Value
   End With
End Sub

Bonne soirée,

Hello Sankukai!

Merci pour la précision. Bon, du coup on perd le côté concis du code. C'est dommage.

Rechercher des sujets similaires à "code modifie coller valeurs fonctionne"