bloquer la mise en forme d'un tableau

trivette

XLDnaute Nouveau
Bonjour à tous,

voici mon problème :

j'ai crée un tableau Excel avec mise en forme que les utilisateurs doivent remplir en fonction de ce qu'ils ont produit dans la journée. Ces données sont parfois les mêmes pour certaines (matricules).

Je souhaiterais qu'ils ne soient autorisés qu'à saisir des données et que lorsqu'ils font un copier/coller, cela ne modifie pas la mise en forme (le tableau) pour de futurs traitements. Il faudrait en fait qu'ils aient juste la possibilité de remplir les cellules et d'effectuer des copier/coller et que la trame (mise en forme du tableau soit bloquée)

J'espère avoir été clair.

Cordialement,

trivette
 
Dernière édition:

job75

XLDnaute Barbatruc
Re : bloquer la mise en forme d'un tableau

Bonjour trivette, bienvenue sur XLD,

1) Pour les cellules où des données peuvent être entrées => Format de cellule => Protection et décocher la case Verrouillée.

2) Protéger la feuille avec un mot de passe, les formats ne pourront pas être modifiés.

A+
 

trivette

XLDnaute Nouveau
Re : bloquer la mise en forme d'un tableau

Bonjour job75 et merci d'avoir répondu rapidement.

Avec ce système, les saisies sont verrouillées. Ce que je souhaiterais en fait c'est que lorsqu'un utilisateur fasse un copier/coller cela ne modifie pas les bordures qui sont mises en place. le problème est qu'en utilisant la souris on peut garder la mise en forme mais pas incrémenter une série et vice versa.

est il possible de bloquer totalement les bordures d'un tableau pour que les utilisateurs ne puissent les modifier lorsqu'ils saisissent sur ce tableau?

Merci d'avance
 

job75

XLDnaute Barbatruc
Re : bloquer la mise en forme d'un tableau

Re,

Mettez cette macro dans le code de la feuille (clic droit sur l'onglez et Visualiser le code) :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo
If Application.CutCopyMode Then
  On Error Resume Next 'sécurité
  Application.EnableEvents = False 'désactive l'action des évènements
  tablo = Target 'mémorise les valeurs
  Application.Undo 'annule le collage
  Target = tablo 'rétablit uniquement les valeurs
  Application.EnableEvents = True
End If
End Sub
Toute modification de format par Copier/Coller sera annulée.

A+
 

job75

XLDnaute Barbatruc
Re : bloquer la mise en forme d'un tableau

Re,

Il faut aussi dans ce cas re-sélectionner la plage :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo
  On Error Resume Next 'sécurité
  Application.EnableEvents = False 'désactive l'action des évènements
  tablo = Target 'mémorise les valeurs
  Application.Undo 'annule le collage
  Target = tablo 'rétablit uniquement les valeurs
  Target.Select
  Application.EnableEvents = True
End Sub
A+
 

job75

XLDnaute Barbatruc
Re : bloquer la mise en forme d'un tableau

Re,

Pardon, c'est la dernière sélection qu'on doit re-sélectionner :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim tablo, sel As Range
  On Error Resume Next 'sécurité
  Application.EnableEvents = False 'désactive l'action des évènements
  tablo = Target 'mémorise les valeurs
  Set sel = Selection
  Application.Undo 'annule le collage
  Target = tablo 'rétablit uniquement les valeurs
  sel.Select
  Application.EnableEvents = True
End Sub
A+
 

Discussions similaires

Statistiques des forums

Discussions
312 196
Messages
2 086 092
Membres
103 116
dernier inscrit
kutobi87