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

copie ligne puis suppression

WocaM

XLDnaute Junior
Bonsoir le Forum

je cherche à réaliser une macro pour couper la dernière ligne d'un tableau de la feuille (ARCHIVES_DONNEES)
pour la coller dans un tableau en dernière ligne dans la feuille (DONNEES)
mais je n'y arrive pas, je ne peux pas faire de couper/coller (valeur) car une fois dans mon onglet de destination, excel interdit le collage spécial

Donc, voila ce que je veux faire via une macro classique,
Code:
    Sheets("ARCHIVES_DONNEES").Select
    Range("A5:J5").Select
    Selection.Copy
    Sheets("DONNEES").Select
    Range("A27").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("A1").Select
    Sheets("ARCHIVES_DONNEES").Select
    Rows("5:5").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("A1:A2").Select
    Sheets("DONNEES").Select

voila ce que j'ai réussi a coder mais ça ne marche pas au niveau des Range
Code:
Private Sub CommandButton3_Click()

    maligne3 = Sheets("ARCHIVES_DONNEES").Range("A" & Rows.Count).End(xlUp).Row
    Sheets("ARCHIVES_DONNEES").Select
    Range(Cells(maligne3, 1) & Cells(maligne3, 10)).Select
    Selection.Copy
    maligne4 = Sheets("DONNEES").Range("A" & Rows.Count).End(xlUp).Row + 1
    Range("A" & maligne4).Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
       :=False, Transpose:=False
    Sheets("ARCHIVES_DONNEES").Cells(maligne3, 1).EntireRow.ClearContents
    Range("A1").Select
End Sub

Merci d'avance de vos lumières
Cordialement
WocaM
 

phlaurent55

Nous a quittés en 2020
Repose en paix
Re : copie ligne puis suppression

Bonjour WocaM,

avant toute chose vérifie si tu n'as pas de cellules fusionnées parmi celles que tu copies et/où à l'endroit où tu les colles

à+
Philippe
 

Pierrot93

XLDnaute Barbatruc
Re : copie ligne puis suppression

Bonjour à tous,

où est placé ton code ?? si placé dans un module de feuille normal que cela ne fonctionne pas.... Il faut préciser l'objet "sheets" devant chaque objets "range"... peut être qu'un tout petit fichier en pièce jointe nous aiderait à t'aider...

bonne journée
@+
 

WocaM

XLDnaute Junior
Re : copie ligne puis suppression

Bonjour, Pierrot93

Bon pas encore super réveillé,
Mon code est placé directement dans la feuille ou se trouve le bouton (DONNEES en l’occurrence)
J'ai essayé de mettre comme tu disait l'objet sheet devant mais ça change rien

voila un fichier épurée en exemple si ça peu aidé

Cordialement
WocaM
 

Pièces jointes

  • test retour.xlsm
    90.2 KB · Affichages: 79

Pierrot93

XLDnaute Barbatruc
Re : copie ligne puis suppression

Re,

modifie ton code comme suit :
Code:
Option Explicit
Private Sub CommandButton3_Click()
Dim maligne3 As Long, maligne4 As Long
maligne3 = Sheets("ARCHIVES_DONNEES").Range("A" & Rows.Count).End(xlUp).Row
Sheets("ARCHIVES_DONNEES").Cells(maligne3, 1).Resize(1, 10).Copy
maligne4 = Range("A" & Rows.Count).End(xlUp).Row + 1
Range("A" & maligne4).PasteSpecial Paste:=xlPasteValues
Sheets("ARCHIVES_DONNEES").Cells(maligne3, 1).Resize(1, 10).ClearContents
End Sub
 

WocaM

XLDnaute Junior
Re : copie ligne puis suppression

Merci Pierrot93

J'ai copié ton code, ça marche nickel
je vais maintenant analyser le code pour mieux comprendre et pouvoir le réutiliser ailleurs

Cordialement
WocaM
 

laetitia90

XLDnaute Barbatruc
Re : copie ligne puis suppression

bonjour WocaM ,gilbert_RGI,phlaurent55, Pierrot93
dans ce cas bien precis peut être couper au lieu de copier plus simple

Code:
Dim x As Long
With Sheets("ARCHIVES_DONNEES")
x = .Range("A" & .Rows.Count).End(xlUp).Row
.Cells(x, 1).Resize(1, 10).Cut Destination:=Cells(Rows.Count, 1).End(xlUp)(2)
End With
 

Discussions similaires

Réponses
2
Affichages
183
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…