Appliquer un macro dans un seul classeur Excel

chorifi

XLDnaute Nouveau
Bonjour tout le monde,
je reviens vers vous pour une un petit problème que je rencontre dès l'exécution du macro " désactiver copier coller" ci joint. en fait, une fois exécuté, le copier coller reste désactivé dans les autres classeurs même après la fermeture du classeur objet du macro.
je veux que ce macro soit affecté à un seul classeur avec une possibilité de le réactiver quand c'est nécessaire (dans le même classeur).

Merci d'avance pour votre aide et bonne journée à vous tous.

voici le macro "désactiver copier coller" :

Sub coller_off()
With CommandBars(1).Controls("Edition")
.Controls("Coller").Enabled = False
.Controls("Collage spécial...").Enabled = False
End With
With CommandBars("Cell")
.Controls("Coller").Enabled = False
.Controls("Collage spécial...").Enabled = False
On Error Resume Next
With .Controls.Add(msoControlButton, , , 3, True)
.Caption = "Coller la valeur"
.OnAction = "Col_valeur"
End With
End With
End Sub

Sub coller_on()
With CommandBars(1).Controls("Edition")
.Controls("Coller").Enabled = True
.Controls("Collage spécial...").Enabled = True
End With
With CommandBars("Cell")
.Controls("Coller").Enabled = True
.Controls("Collage spécial...").Enabled = True
On Error Resume Next
.Controls("Coller la valeur").Delete
End With
End Sub

Sub Col_valeur()
On Error Resume Next
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
End Sub
 

gilbert_RGI

XLDnaute Barbatruc
Re : Appliquer un macro dans un seul classeur Excel

bonjour

mettre le code suivant dans le thisworlbook (VBA)

Code:
Private Sub Workbook_BeforeClose(Cancel As Boolean)
coller_on
End Sub
Private Sub Workbook_Open()
coller_off
End Sub

le code 'coller off' sera lancé à l'ouverture du fichier
et à la fermeture 'coller on' remet le coller et coller spécial

:D
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 836
Messages
2 092 639
Membres
105 475
dernier inscrit
ramzi slama