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

Macro CopyPasteSpecial (Exemple)

M

Mytå

Guest
Salut le Forum

Juste pour faire avancer mon compteur

Code:
Sub CopyPasteSpecial()
 
Dim CelluleDest As Range
Dim PlageSource As Range
 
On Error GoTo Erreur

'Permet de sélectionner une plage avec la souris (Méthode InputBox)
    Set PlageSource = Application.InputBox _
        ("Sélectionnez la ou les cellule(s) à copier !", "Plage source", Type:=8)
 
    Set CelluleDest = Application.InputBox _
        ("Sélectionnez la cellule de destination !", "Cellule destination", Type:=8)
 
If CelluleDest.Count > 1 Then
    MsgBox "Vous ne devez saisir qu'une cellule," _
        + vbCrLf + "de destination !" _
        + vbCrLf + vbCrLf + "La copie va être annulée."
    Exit Sub
End If
 
'On va ouvre la boite de dialogue
'collage spécial pour faire la copie.
PlageSource.Copy
    With CelluleDest
        .Select
        .Application.Dialogs(xlDialogPasteSpecial).Show
     End With
Application.CutCopyMode = False
Exit Sub
 
Erreur:
If Err.Number = 424 Then Exit Sub
End Sub

Mytå
 
Dernière modification par un modérateur:

myDearFriend!

XLDnaute Barbatruc
Re : Macro CopyPasteSpecial (Exemple)

Bonsoir Mytå,

Avec des exemples de code comme celui là (et comme pour les modules de classe), tu peux faire avancer ton compteur comme tu l'entends...
Merci pour ces contributions toujours aussi sympas.

Cordialement,
 
M

Mytå

Guest
Re : Macro CopyPasteSpecial (Exemple)

Re le Forum

La macro légerement modifiée afin de faire le collage sur la même ou une
autre feuille.

PHP:
Sub CopyPasteSpecial()
 
Dim CelluleDest As Range
Dim PlageSource As Range
 
'Permet de sélectionner une plage avec la souris (Méthode InputBox)
    Set PlageSource = Application.InputBox _
        ("Sélectionnez la ou les cellule(s) à copier !", "Plage source", Type:=8)
    Set CelluleDest = Application.InputBox _
        ("Sélectionnez la cellule de destination !", "Cellule destination", Type:=8)
 
If CelluleDest.Count > 1 Then
    MsgBox "Vous ne devez saisir qu'une cellule," _
        + vbCrLf + "de destination !" _
            + vbCrLf + vbCrLf + "La copie va être annulée."
                Exit Sub
End If
 
'On va ouvre la boite de dialogue
'collage spécial pour faire la copie.

PlageSource.Copy

    With CelluleDest
        Sheets(.Parent.Name).Select
        Range(.Address).Select
        .Application.Dialogs(xlDialogPasteSpecial).Show
    End With
 
Application.CutCopyMode = False
 
End Sub

Mytå
 

porcinet82

XLDnaute Barbatruc
Re : Macro CopyPasteSpecial (Exemple)

Bonsoir a tous,

Effectivement Mytå, ton code m'a permis d'apprendre pas mal de chose, notamment PlageSource et CelluleDest.

Merci pour ta contribution,

@+

PS : Y a pas de raison qu'il n'y est que toi qui incrémente ton compteur...
 

Discussions similaires

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