Worksheet_SelectionChange
Résolu/Fermé
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
-
Modifié le 27 juil. 2017 à 14:42
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 - 30 juil. 2017 à 18:35
yg_be Messages postés 23342 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 21 novembre 2024 - 30 juil. 2017 à 18:35
A voir également:
- Private sub worksheet_selectionchange
- Navigation in private - Guide
- Private firewall - Télécharger - Pare-feu
- Move your sub - Télécharger - Sous-titres
- D-sub out of range 67.5 khz/60hz ✓ - Forum Windows
- D sub gestion alim - Forum Ecran
5 réponses
yg_be
Messages postés
23342
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
21 novembre 2024
Ambassadeur
1 550
29 juil. 2017 à 10:31
29 juil. 2017 à 10:31
bonjour, j'ai testé ton code initial, et l'amélioration proposée par paul. les deux fonctionnent bien, ne permettent pas de sélectionner les colonnes que tu souhaites protéger. celui de paul renvoie à A1, tandis que le tien déplace la sélection vers la droite.
je me demande si tu as inséré le code VBA au bon endroit: est-il bien associé à la bonne feuille?
je me demande si tu as inséré le code VBA au bon endroit: est-il bien associé à la bonne feuille?
Bonjour amo-51,
Mon 1er message était pour sélectionner la cellule A1 ;
suite au message de yg_be, je propose 2 autres codes.
1er code VBA :
2ème code VBA :
Merci de me donner ton avis.
Cordialement
Mon 1er message était pour sélectionner la cellule A1 ;
suite au message de yg_be, je propose 2 autres codes.
1er code VBA :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("C:C, I:K"), Target) Is Nothing Then ' sélection de la colonne de la cellule active (C, I ou K) Target.EntireColumn.Select End If End Sub
2ème code VBA :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Not Intersect(Range("C:C, I:K"), Target) Is Nothing Then ' sélection des 3 colonnes C, I et K Range("C:C, I:I, K:K").Columns.Select End If End Sub
Merci de me donner ton avis.
Cordialement
Bonjour,
1) Quel est le nom exact de la feuille où tu veux bloquer la saisie ?
"Feuil6" ? autre ? à supposer que ce soit "Feuil6", le code VBA
doit être placé dans Feuil6 : Alt F11 pour aller sur Visual Basic ;
côté gauche, en haut, fais un double-clic sur Feuil6 => à droite :
page de code de Feuil6.
2) Tu as écris : « bloquer la saisie dans les colonnes C et I jusqu'à K ».
Pourquoi vouloir le faire par VBA ? sur "Feuil6", sélectionne ta colonne C
et tes colonnes I à K ; clic droit sur la sélection, Format de cellule, onglet
Protection : ☑ Verrouillée (mais normalement c'est déjà coché) ; après
protection de "Feuil6", c'est alors impossible de saisir dans les cellules
verrouillées => tes colonnes sont bien bloquées.
Si tu tiens absolument à le faire par une macro événementielle VBA :
Private Sub Worksheet_SelectionChange(ByVal Target As Range) ActiveSheet.Unprotect Range("C:C, I:K").Columns.Locked = True ActiveSheet.Protect End Sub
Mais c'est inutile de faire ce travail à chaque fois que tu cliques
sur une cellule de ces colonnes ! enfin, c'est toi qui vois...
À te lire pour avoir ton avis.
yg_be
Messages postés
23342
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
21 novembre 2024
Ambassadeur
1 550
30 juil. 2017 à 11:06
30 juil. 2017 à 11:06
je me demande si tu as inséré le code VBA au bon endroit: est-il bien associé à la bonne feuille?
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 11:35
30 juil. 2017 à 11:35
comment le savoir
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 11:37
30 juil. 2017 à 11:37
au faite j'ai ajouté
feuil6.select en deuxième ligne
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
feuil6.select
If Not Intersect(Range("C:C, I:K"), Target) Is Nothing Then
feuil6.select en deuxième ligne
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
feuil6.select
If Not Intersect(Range("C:C, I:K"), Target) Is Nothing Then
yg_be
Messages postés
23342
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
21 novembre 2024
1 550
>
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 12:38
30 juil. 2017 à 12:38
Deux façons de vérifier si le code est associé à la bonne feuille:
Dans l'éditeur VBA, dans l’Explorateur de projets, si tu double cliques sur la "bonne" feuille de calcul, vois-tu le code à droite?
Quand tu cliques dans le code, quel est l'élément grisé dans l'explorateur de projet?
Dans l'éditeur VBA, dans l’Explorateur de projets, si tu double cliques sur la "bonne" feuille de calcul, vois-tu le code à droite?
Quand tu cliques dans le code, quel est l'élément grisé dans l'explorateur de projet?
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 12:53
30 juil. 2017 à 12:53
j'ai bien suivi tes orientations
je n'ai pas trouvé ma macro dans aucune des feuilles soit de 1 à 6
question où est ma macro
ceci étant donner, j'ai comme même une solution
j'ai écris ma macro sur la feuille 6
merci
reste que, je ne sais pas encore où se trouve la première macro (initial)
merci de m'expliquer
je n'ai pas trouvé ma macro dans aucune des feuilles soit de 1 à 6
question où est ma macro
ceci étant donner, j'ai comme même une solution
j'ai écris ma macro sur la feuille 6
merci
reste que, je ne sais pas encore où se trouve la première macro (initial)
merci de m'expliquer
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 12:54
30 juil. 2017 à 12:54
Peut etre qu'elle est dans le module 1
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
amo-51
Messages postés
94
Date d'inscription
mercredi 21 septembre 2016
Statut
Membre
Dernière intervention
3 novembre 2019
30 juil. 2017 à 13:11
30 juil. 2017 à 13:11
merci paul
et merci yg
vous m'avez bien aidé
et merci yg
vous m'avez bien aidé
27 juil. 2017 à 14:58