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

Interdire l'utilisation des touches suppr et del dans une cellule

  • Initiateur de la discussion Initiateur de la discussion jujulebiker85
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

J

jujulebiker85

Guest
Re moi j'en demande beaucoup je sais mais ya que vous qui puissiez m'aidez:

est-il possible d'nterdire l'utilisation des touches suppr et del dans une cellule avec dévérouillage mot de passe?

merci je débute dans le vba...
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

Bonsoir,

Ta question n'est pas complète ou confuse.
S'agit-il d'interdire ces touches quand tu édites la cellule ?
Si oui, la réponse est non car en mode édition d'une cellule les évènements ne se déclenchent pas et donc pas de macros possibles.

Précise ce que tu veux faire exactement.
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

je veux qu'on puisse écrire un nombre dans une cellule sans que ça supprime l'historique des multiples aditions qui se sont créer dans cette cellule si jamais on appuie sur la touche supp ou del

regarde ce post si je clique sur supp ou del ca éfface l'historique des résultats et ca je veux l'interdire je veux que ca continue d'aditionner

https://www.excel-downloads.com/threads/addition-de-nombre-dans-meme-cellule-bis.135775/
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule


Je n'ai toujours pas compris. C'est l'âge comme dit dans l'autre fil.
Tu ne veux pas qu'on fasse Suppr sur la cellule avant d'y entrer pour la modifier ou quand tu as le curseur dedans ?
Ce sont deux choses différentes.
Je m'explique : Si tu te positionnes sur la cellule et que tu ne veux pas qu'on la vide avec Suppr, c'est faisable. Si tu es en édition, on ne peut pas inhiber cette touche ni aucune autre.
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

oui voila je ne veux pas qu'on fasse Suppr sur la cellule avant d'y entrer pour la modifier et mettre un autre nombre
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

Bonsoir,

Je ne sais pas is j'ai tout compris, mais essaye de supprimer la valeur de la cellule 😉

A+
 

Pièces jointes

Re : Interdire l'utilisation des touches suppr et del dans une cellule

parfait mais quand j'atoute cette macro à la suite de mes autres macro j'ai ce message d'erreur:

erreur de compilation non ambigu détecté Worksheet_Change

ma liste de macro sur ma feuille est comme çà séparé par un trait entre chaque

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect([I4:I300,K4:K300,U4:U300], Target) Is Nothing And Target.Count = 1 Then
If Target <> "" Then
Application.EnableEvents = False
valsaisie = Target
Application.Undo
If Left(Target.Formula, 1) = "=" Then
Target.Formula = Target.Formula & "+" & valsaisie
Else
Target.Formula = "=" & valsaisie
End If
Application.EnableEvents = True
End If
End If
End Sub


Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim m As String
m = InputBox("mot de passe ???")
If m <> "a" Then Cancel = True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$I$5" And Target.Value = "" Then
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
MsgBox "Vous ne devez pas effacer la valeur, mais la remplacer"
End If
End Sub
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

Re,

Normal tu as déjà une sub Wroksheet_Change
Si tu ne nous dis pas tout 🙄

Il faut remplacer, enfin je pense, ton ancien code par celui-ci
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  If Intersect([I4:I300,K4:K300,U4:U300], Target) Is Nothing Or Target.Count > 1 Then Exit Sub
  If Target <> "" Then
    Application.EnableEvents = False
    valsaisie = Target
    Application.Undo
    If Left(Target.Formula, 1) = "=" Then
      Target.Formula = Target.Formula & "+" & valsaisie
    Else
      Target.Formula = "=" & valsaisie
    End If
    Application.EnableEvents = True
  Else
    Application.EnableEvents = False
    Application.Undo
    Application.EnableEvents = True
    MsgBox "Vous ne devez pas effacer la valeur, mais la remplacer"
  End If
End Sub


Et dis nous
A+
 
Dernière modification par un modérateur:
Re : Interdire l'utilisation des touches suppr et del dans une cellule

niquel c'est presque parfait bravo peux tu me rajouter un mot de passe pour activer la touche suppr par mot de passe?

à cette suite de maccro il me manque plus qu'une formule pour interdire les lettres dans des cellules par exemple I4 àI300 je pense qu'il faut remplacer le "for each cell in target"

Private Sub Worksheet_Change(ByVal Target As Range)
For Each cell In Target
If Not IsNumeric(cell) Then
MsgBox "Saisie incorrecte . "
Application.Undo
End If
Next
End Sub
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

Salut,

Voici le code avec le mot de passe et la saisie non numérique
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim ValSaisie As Variant
  If Intersect([I4:I300,K4:K300,U4:U300], Target) Is Nothing Or Target.Count > 1 Then Exit Sub
  ' Si la valeur saisie n'est pas vide
  If Target <> "" Then
    ' Si la saisie c'est faite dans les cellule I4:I300 et que la valeur saisie n'est pas numérique
    If Not Intersect([I4:I300], Target) Is Nothing And Not IsNumeric(Target) Then
      Application.EnableEvents = False
      Application.Undo
      Application.EnableEvents = True
      MsgBox "Saisie incorrecte, numérique uniquement !"
    Else
    ' Sinon on continue normalement
    Application.EnableEvents = False
    ValSaisie = Target
    Application.Undo
    If Left(Target.Formula, 1) = "=" Then
      Target.Formula = Target.Formula & "+" & ValSaisie
    Else
      Target.Formula = "=" & ValSaisie
    End If
    Application.EnableEvents = True
    End If
  Else
    ' Si tentative de suppression de la cellules
    ' Demander le mot de passe qui est : toto
    If InputBox("Merci de saisir le mot de passe pour suppression", "SUPPRESSION ...") <> "toto" Then
      Application.EnableEvents = False
      Application.Undo
      Application.EnableEvents = True
      MsgBox "Vous ne devez pas effacer la valeur, mais la remplacer"
    End If
  End If
End Sub

A+
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

c'est parfait tous ça il faut que je me penche d'avantage dessus pour comprendre ces macros vous les connaissez comment vous? vous avez fait un formation?
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

ya un beug ok pour ne pas supprimer une cellule par contre si je séléctionne plusieurs celule en faisant ctrl et clique souris et j'appuie sur la touche suppr et la tous s'éfface en gros par plusieurs on peux les effacer...
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

avez vous une solution pour ce petit bug:

ya un beug ok pour ne pas supprimer une cellule par contre si je séléctionne plusieurs celule en faisant ctrl et clique souris et j'appuie sur la touche suppr et la tous s'éfface en gros par plusieurs on peux les effacer...
 
Re : Interdire l'utilisation des touches suppr et del dans une cellule

Bonjour à tous

Juste pour infos:
Avec Excel, il est interdit d'interdire comme y disait y'a 44 ans...
Car on peut toujours ouvrir un classeur en désactivant les macros.
Ce qui permet d'inhiber cette interdiction.

Mais pour si tu persistes néanmoins et pour répondre à ta dernière question, ajoute ceci en début de code:
If Target.Count > 1 Then Exit Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

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