Comment empêcher le copier coller dans certaines colonnes

Bonjour,

Je voudrais empêcher le copier coller dans quelques colonnes d'excel tout en permettant l'utilisateur de pouvoir écrire dans ces colonnes !!

Est ce possible ?

Avez vous une idée?

Je n'ai malheureusement pas beaucoup de connaissances en VBA ...

Merci !!

Bonjour,

Je n'ai pas trouvé comme bloquer les utilisateurs à ne pas Copier/coller.

Il y aura un message d'alerte signalant à l'utilisateur de na pas utiliser le copier/coller lorsqu'il fera un clic droit dans n'importe quelle case de la Feuille1 mais cela ne l'empêchera pas de faire un copier/coller.

Je continue à chercher.

254copier-coller.zip (6.96 Ko)

ok Merci

il y a qqn qui a posté ça sur un forum

Ce code interdit le Copier/Coller dans la plage A1:E10 :

Code :

Dim flag As Boolean 'en haut de la page de code

Private Sub Worksheet_Change(ByVal Target As Range)

If flag Or Intersect(Target, [COLOR="Red"]Range("A1:E10")) Is Nothing _

Or Application.CutCopyMode = False Then Exit Sub

flag = True: Application.Undo: flag = False

End Sub

Il faut que ce soit un Copier/Coller classique utilisant le presse-papier Excel.

mais quand je le lance il y a marqué "erreur de compilation : endsup attendu"

mais bon,

deja ce code ne fait pas tout à fait ce que je veux car il interdit le copier coller dans une seule plage alors que moi je veux empecher le copier coller dans des colonnes entières

j'avais penser mettre plutot Range "K1 : K65000" pour empecher le copier coller dans la colonne K par exemple

mais quand j'insere ce truc j'ai une erreur qui me dit "attendu séparateur de liste ou ) "

J'ai repris le code est corrigé, cela fonctionne (onglet "essai2" du classeur joint)

Si une colonne spécifique, par exemple la A, renseignée dans le code VBA: "A:A"

L'utilisateur ne pourra pas copier et coller dans toute cette colonne.

Par contre je n'ai pas réussi à trouver pour la faire appliquer à plusieurs colonnes, il prend bien une plage de cellule ex : A1 : Z50 mais je ne trouve pas pour lui faire appliquer sur la colone B et K et H.....

499copier-coller.zip (8.55 Ko)

Je ne vois pas où est le code corrigé dans le classeur que tu as joint...

je dois aller où pour le voir?

Sinon merci c'est déjà bien d'avoir trouvé ça

mais il est vrai que ce serait beaucoup plus efficace si je pouvais faire une macro qui empechait le copier coller sur plusieurs colonnes d'un coup.

Si dans Range tu met des virgules pour séparer le nom des colonnes ou quelque chose comme ça ça ne va pas ?

je dis ça mais bon je n'y connais rien en VBA ... c'était juste une idée

Bonjour

A toute fin utile

@Niko j'ai repris ton premier code que je trouvais intéressant

Dans ce cas on interdit de coller (interdiction du clic droit) dans les colonnes B et celles de H à K

Mais on n'interdit pas par les raccourcis clavier ni par menus

Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)

  If Not Intersect(Range("B:B,H:K"), Target) Is Nothing Then
    If Application.CutCopyMode <> False Then Cancel = True
  End If
End Sub

Pour ta 2ème macro il faut placer la déclaration de la variable Flag en dehors de la procédure

Dim flag As Boolean

Private Sub Worksheet_Change(ByVal Target As Range)
  If flag Or Intersect(Target, Range("B:B,H:K")) Is Nothing _
          Or Application.CutCopyMode = False Then Exit Sub
    flag = True: Application.Undo: flag = False
End Sub

pour accéder à l'éditeur de VBA : ALT + F11

Code sur la feuille "essai2"

J'ai un fichier qui fonctionne avec "Intersect" et j'ai réussi à le faire appliquer sur plusieurs colonnes en remplaçant intersect(range("A:A"),Target) qui ne l'appliquait que sur la colonne A par intersect(union(range("A:A"),range("B:B"), range("K:K"),Target) mais dans cette formule cela ne fonctionne pas.

JE tatouille aussi en VBA donc....

Trop Rapide, MErci Banzai, je n'avais pas vu la réponse

merci à vous 2

Banzaii les codes que tu as posté je les met dans "worksheet" ou dans un module ?

merci

Bonjour

Seulement la 2ème macro dans le module de la feuille

Clic droit sur l'onglet de la feuille ----> Visualiser le code

Et c'est là que tu y colles la macro

Bonjour à tous !

J'ai essayé la dernière macro donnée par Banzai et je peux toujours copier mes colonnes avec le clic droit de la souris comme avec "CTRL + C"

Je travail sur un fichier que je souhaite bloqué totalement et malheureusement, j'ai un peu de mal avec VBA...

Je souhaite pouvoir bloqué le copiage ou coupage des colonnes "B" à "I" de quelque façon que se soit...

Mais est-ce possible ? C'est une autre question

Merci !

Rechercher des sujets similaires à "comment empecher copier coller certaines colonnes"