Copier sans la mise en forme

Michel68000

XLDnaute Junior
Bonjour à tous,
Je sèche sur un problème qui je le sais sera facile pour certains. Je copie quatre cellules d'une feuille par le biais d'un bouton sur une autre feuille, tout marche bien sauf qu'en copiant cela copie aussi la mise en forme (couleur et cellule déroulantes, j'aimerais juste faire migrer les valeurs contenues en feuil1. A3:E3.
Voilà le code en question:

Private Sub CommandButton1_Click()
With Sheets("Données")
LigneDest = .Range("A" & .Rows.Count).End(xlUp).Row + 1
Range("B3:E3").Copy Destination:=.Range("A" & LigneDest)
End With
Range("B3:E3").ClearContents
End Sub

Si quelqu'un à une idée je suis preneur.
Salutations
 

Lone-wolf

XLDnaute Barbatruc
Bonjour Michel :)

VB:
Option Explicit

Private Sub CommandButton1_Click()
Dim LigneDest As Long, celDest As Range, plage As Range

    With Sheets("Données")
        LigneDest = .Range("a" & .Rows.Count).End(xlUp).Row + 1
        Set celDest = .Range("a" & LigneDest)
    End With

   Set plage = Range("B3:E3")
    plage.Copy

    celDest.PasteSpecial Paste:=xlPasteValues
    Application.CutCopyMode = 0

    Application.Goto Sheets("Données").Range("a1")
    plage.ClearContents
End Sub

EDIT: bonjour jacky :)
 
Dernière édition:

Jacky67

XLDnaute Barbatruc
Bonjour,
Ceci devrait être suffisant
Bouton sur la feuille source
Code:
Private Sub CommandButton1_Click()
Dim LigneDest As Long
With Sheets("Données")
LigneDest = .Range("A" & .Rows.Count).End(xlUp).Row + 1
Range("B3:E3").Copy
.Range("A" & LigneDest).PasteSpecial Paste:=xlPasteValues
End With
Range("B3:E3").ClearContents
End Sub

**Bon dimanche Lone-wolf :cool:
 
Dernière édition:

Michel68000

XLDnaute Junior
Merci Jacky67 ta solution marche impec le seul bémol c'est qu'une fois la copie terminée la feuille de départ conserve la zone à copier en sélection, on arrive sans problème à enlever ça en appuyant sur échap mais si il existe autre chose ça terminerait le truc
 

Jacky67

XLDnaute Barbatruc
Merci Jacky67 ta solution marche impec le seul bémol c'est qu'une fois la copie terminée la feuille de départ conserve la zone à copier en sélection, on arrive sans problème à enlever ça en appuyant sur échap mais si il existe autre chose ça terminerait le truc
re,
Code:
Private Sub CommandButton1_Click()
Dim LigneDest As Long
With Sheets("Données")
LigneDest = .Range("A" & .Rows.Count).End(xlUp).Row + 1
Range("B3:E3").Copy
.Range("A" & LigneDest).PasteSpecial Paste:=xlPasteValues
Application.Goto .[a1] ' ou tout autre cellule
End With
Range("B3:E3").ClearContents
End Sub
Essaye.....
 

Statistiques des forums

Discussions
312 472
Messages
2 088 712
Membres
103 930
dernier inscrit
Jibo