Code VBA "Collage spécial Tout sauf la bordure"

tamatave33

XLDnaute Occasionnel
Bonjour le forum,

Dans une macro qui copie et colle un ensemble de cellules je voudrais coller les cellules mais en gardant les bordure existantes, comme si je faisais collage spécial Tout sauf la bordure.

Quel est le code VBA pour faire ce collage.

Voici mon code :
Code:
If Range("M4") = 909 Then
    Range("M2") = "GUJAN MESTRAS"
    Sheets("Sorties 2018").Range("S6:U114").Copy Worksheets("Sortie").Range("H11")
End If

Merci
 

DoubleZero

XLDnaute Barbatruc
Bonjour à toutes et à tous,
... je voudrais coller les cellules mais en gardant les bordure existantes, comme si je faisais collage spécial Tout sauf la bordure...
Si j'ai bien compris et en attendant mieux :
Code:
Option Explicit
Sub CommandButton1_Click()
    If Range("m4") = 909 Then Range("m2") = "GUJAN MESTRAS"
    ' noms onglets adapter
    Sheets("a").Range("a6:b14").Copy Sheets("aa").Range("h11")
    Sheets("aa").Range("h11:i19").Borders.Value = False
End Sub
A bientôt :)
 

Staple1600

XLDnaute Barbatruc
Bonsoir le fil, le forum, 00 ;)

@tamatave33
L'enregistreur de macros est ton ami ;)
VB:
Sub Macro1()
Dim a As Range: Set a = Range("A1:B4")
Dim b As Range: Set b = Range("D4:E7")
Cells.Clear: b.Borders.LineStyle = 1
a = "=ROW()*COLUMN()": a.Value = a.Value
a.Select
Selection.Copy
'merci l'enregisteur de macros... ;-)
b.Item(1).PasteSpecial Paste:=xlPasteAllExceptBorders
End Sub
 

tamatave33

XLDnaute Occasionnel
Bonjour DoubleZero, bonjour Staple1600,

Merci pour vos réponses.
En fait, après réflexion, il m'a paru plus simple de faire un copier/coller des valeurs et des commentaires.
Et pour cela j'ai écris le code suivant (en m'inspirant de réponses à d'autres spots) :
Code:
Sub Copier_participants()

If Range("M4") = 905 Then
    Sheets("Sorties 2018").Range("G6:I114").Copy
    With Sheets("Sortie")
        .Range("H11").PasteSpecial Paste:=xlPasteValues
        .Range("H11").PasteSpecial Paste:=xlPasteComments
    End With
    Application.CutCopyMode = False
End If

If Range("M4") = 906 Then
    Sheets("Sorties 2018").Range("J6:L114").Copy
    With Sheets("Sortie")
        .Range("H11").PasteSpecial Paste:=xlPasteValues
        .Range("H11").PasteSpecial Paste:=xlPasteComments
    End With
    Application.CutCopyMode = False
End If

Range("D7").Select

End Sub

Très bonne journée.
 

Statistiques des forums

Discussions
311 724
Messages
2 081 936
Membres
101 844
dernier inscrit
pktla