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

VBA: interdire une selection

  • Initiateur de la discussion Initiateur de la discussion aniu
  • 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 !

A

aniu

Guest
Bonjour!

quelqu'un peut-il m'aider, je suis débutante...

1- je dois créer une procédure qui affiche un message dès que utilisateur selectionne une plage déterminée dont on souhaite interdire l'accès, puis qui déplace le curseur sur la cellule A1 de la feuille.

2- comment créer une fonction qui calcule la moyenne des valeurs, contenues dans une plage de valeurs selectionnées, en ne retenant que les valeurs de la plage comprises entre 2 bornes variables.

Merci et reconnaissance éternelle à tout génie de l'informatique qui pourra m'aider...
🙂
 
salut
réponse à ta 1ère question
a mettre dans le VBA de la feuille concernée
cette fonction empêche de sélectionner les cellules B2:C10 :

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range('B2:C10')) Is Nothing Then
MsgBox 'coin - coin'
Range('A1').Select
End If
End Sub

pour la 2ème pas de réponse désolé

JC
 
Bonsoir Aniu et JC de Lorient,

Pas très génial mais ça marche glupp !

1- La plage interdite est B4😀21.

2- En A2 le nombre de nombres compris entre les bornes C2/D2 et dans B2 la moyenne de ces nombres (2 décimales).

Cordialement

Bernard [file name=PlageMoyenneAniu.zip size=7370]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/PlageMoyenneAniu.zip[/file]
 

Pièces jointes

merci beaucoup JC de Lorient,
voici exactement ce que j'ai donc écrit suite à tes conseils:

Sub Question3()
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range('A1:B3')) Is Nothing Then
MsgBox 'vous ne pouvez pas selectionner cette plage!'
Range('A1:B3').Select
End If
End Sub

mais je ne comprends pas mon ordinateur bug et me demande un 'End Sub', mais il y est mon 'End Sub'!! Bougre d'ordinateur!!
:angry:

alors pourquoi ça marche pas CHEZ MOI?
 
Bonsoir Aniu, JC de Lorient, CBernardT,

Visiblement Aniu, il semble que tu n'ais pas vu la proposition de CBernardT ci-dessus...

Pour tenter de répondre à tes interrogations concernant le code proposé par JC de Lorient :
[ol][li]Le code de JC de Lorient est à copier dans le module de code de la feuille de calcul.[/li]
[li]Ta ligne de code :
Sub Question3()
est de trop, il convient de la supprimer (c'est la raison pour laquelle Excel te réclame un autre 'End Sub'. Cette situation est impossible, tu ne peux pas imbriquer 2 procédures Sub l'une dans l'autre en VBA).[/li]
[li]JC de Lorient précise également dans son exemple:
Range('A1').Select
et non
Range('A1:B3').Select
[/li]
[li]De plus, si tu analyse ton code, tu affiches un message d'interdiction lorsque l'utilisateur se place dans la plage 'A1:B3' et tu sélectionnes par le code cette plage immédiatement après !???[/li][/ol]
Par ailleurs, tu trouveras ci-joint un autre proposition utilisant une fonction personnalisée VBA pour le calcul de cette moyenne particulière...

Cordialement, [file name=PourAniu.zip size=9106]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/PourAniu.zip[/file]
 

Pièces jointes

salut bernard!

je n'ai pas vu ta pièce jointe hier soir, raison pour laquelle je ne comprenais pas grand chose...
un grand merci, ça marche! et en plus le tableau a de jolies couleurs... 🙂

A+
 
- 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

A
Réponses
11
Affichages
2 K
arnaudguerin
A
T
Réponses
4
Affichages
2 K
N
  • Question Question
Réponses
5
Affichages
3 K
I
Réponses
2
Affichages
6 K
Ifuldrita
I
R
Réponses
5
Affichages
1 K
R
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…