Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

protection VBA Excel2000 commentaires autorisés

14 réponses
Avatar
J
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@

10 réponses

1 2
Avatar
isabelle
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@
Avatar
J
Bonjour Isabelle
et merci pour ton aide
Voici le résultat qui va bien :-)

With ActiveSheet
.Protect UserInterfaceOnly:=True
.Protect DrawingObjects:úlse
.EnableAutoFilter = True
.EnableOutlining = True
End With

vraiment tu sais tout :-)
@+
J@@


Le 11/12/2010 10:58, isabelle a écrit :
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@
Avatar
J
Rebonjour Isabelle
Problème : mes formules ne sont plus protégées avec DrawingObjects:úlse

Peut-on y faire quelque chose?
Merci
@+
J@@

Le 11/12/2010 10:58, isabelle a écrit :
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@
Avatar
michdenis
Bonjour,

Je ne me souviens plus si ce paramètre existait pour la version 2000
AllowFormattingCells:=True Si ce dernier est absent, tu vas avoir
de la difficulté à faire ce que tu désires !


Sub Verrcls()
With ActiveSheet
.EnableAutoFilter = True
.EnableOutlining = True
.Protect UserInterfaceOnly:=True, AllowFormattingCells:=True
End With
End Sub

MichD
--------------------------------------------


"J@@" a écrit dans le message de groupe de discussion : ie16of$co2$

Rebonjour Isabelle
Problème : mes formules ne sont plus protégées avec DrawingObjects:úlse

Peut-on y faire quelque chose?
Merci
@+
J@@

Le 11/12/2010 10:58, isabelle a écrit :
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@
Avatar
J
Bonjour michdenis
Eh bien ce paramètre n'existe pas sous Excel 2000 : Erreur 1004 + pas
trouvé dans l'explorateur d'objets.

C'est ennuyeux car l'utilisateur insère de très nombreux commentaires,
et moi je veux
-l'empêcher d'ajouter des colonnes (ce qui va bien avec la protection
Verrcls),
-mais aussi protéger les zones à formules : ligne 2 et 12 colonnes,
toutes les 10 colonnes à partir de la colonne i.

A ton avis si, à l'ouverture du fichier, je copiais ma ligne et mes
colonnes de formules, pour les recoller
- avant fermeture ou enregistrement ou appui sur un bouton qui lance un TCD,
ce montage te semble-t-il raisonnable, ou farfelu.

merci pour ton aide
@+
J@@

Le 11/12/2010 15:57, michdenis a écrit :
Bonjour,

Je ne me souviens plus si ce paramètre existait pour la version 2000
AllowFormattingCells:=True Si ce dernier est absent, tu vas avoir
de la difficulté à faire ce que tu désires !


Sub Verrcls()
With ActiveSheet
.EnableAutoFilter = True
.EnableOutlining = True
.Protect UserInterfaceOnly:=True, AllowFormattingCells:=True
End With
End Sub

MichD
--------------------------------------------


"J@@" a écrit dans le message de groupe de discussion : ie16of$co2$

Rebonjour Isabelle
Problème : mes formules ne sont plus protégées avec DrawingObjects:úlse

Peut-on y faire quelque chose?
Merci
@+
J@@

Le 11/12/2010 10:58, isabelle a écrit :
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@





Avatar
isabelle
salut J@@,

une autre solution serait un bouton perso sur la fenêtre du clic droit,

Sub MesCommentaire()
'executer Cette macro à l'ouverture du classeur
With Application.CommandBars("Cell").Controls.Add(msoControlButton)
.Caption = "Inscrire ou modifier un commentaire"
.BeginGroup = True
.FaceId = 252
.OnAction = "Inscrire_ou_modifier_un_commentaire"
End With
End Sub

Sub MesCommentaire_Reset()
'executer Cette macro à la fermeture du classeur
Application.CommandBars("Cell").Reset
End Sub

Sub Inscrire_ou_modifier_un_commentaire()
ActiveSheet.Unprotect "zaza"
On Error Resume Next
commentaire = ActiveCell.Comment.Text
If Err.Number = 91 Then
Err.Clear
titre$ = "Ajout de commentaire"
rep$ = InputBox("Inscrire votre commentaire", titre$, "")
ActiveCell.AddComment
ActiveCell.Comment.Text Text:=rep$
Else
titre$ = "Modification de commentaire"
rep$ = InputBox("Modifier votre commentaire", titre$, commentaire)
ActiveCell.Comment.Text Text:=rep$
End If
With ActiveSheet
.Password = "zaza"
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

@+
isabelle

,

Le 2010-12-11 23:27, J@@ a écrit :
Bonjour michdenis
Eh bien ce paramètre n'existe pas sous Excel 2000 : Erreur 1004 + pas
trouvé dans l'explorateur d'objets.

C'est ennuyeux car l'utilisateur insère de très nombreux commentaires,
et moi je veux
-l'empêcher d'ajouter des colonnes (ce qui va bien avec la protection
Verrcls),
-mais aussi protéger les zones à formules : ligne 2 et 12 colonnes,
toutes les 10 colonnes à partir de la colonne i.

A ton avis si, à l'ouverture du fichier, je copiais ma ligne et mes
colonnes de formules, pour les recoller
- avant fermeture ou enregistrement ou appui sur un bouton qui lance un
TCD,
ce montage te semble-t-il raisonnable, ou farfelu.

merci pour ton aide
@+
J@@

Avatar
isabelle
correction,
il faut enlever le point devant Password

isabelle
,

Le 2010-12-12 13:58, isabelle a écrit :
salut J@@,

une autre solution serait un bouton perso sur la fenêtre du clic droit,

Sub MesCommentaire()
'executer Cette macro à l'ouverture du classeur
With Application.CommandBars("Cell").Controls.Add(msoControlButton)
.Caption = "Inscrire ou modifier un commentaire"
.BeginGroup = True
.FaceId = 252
.OnAction = "Inscrire_ou_modifier_un_commentaire"
End With
End Sub

Sub MesCommentaire_Reset()
'executer Cette macro à la fermeture du classeur
Application.CommandBars("Cell").Reset
End Sub

Sub Inscrire_ou_modifier_un_commentaire()
ActiveSheet.Unprotect "zaza"
On Error Resume Next
commentaire = ActiveCell.Comment.Text
If Err.Number = 91 Then
Err.Clear
titre$ = "Ajout de commentaire"
rep$ = InputBox("Inscrire votre commentaire", titre$, "")
ActiveCell.AddComment
ActiveCell.Comment.Text Text:=rep$
Else
titre$ = "Modification de commentaire"
rep$ = InputBox("Modifier votre commentaire", titre$, commentaire)
ActiveCell.Comment.Text Text:=rep$
End If
With ActiveSheet
.Password = "zaza"
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

@+
isabelle
Avatar
michdenis
Bonjour,

Tu peux utiliser le code suivant pour insérer un commentaire
dans une cellule active. Au besoin, il est possible d'ajouter des
caractéristiques particulières au commentaire comme si tu le
faisais manuellement.

Comme tu travailles à partir d'Excel 2000, tu peux ajouter un bouton
de commande dans une des barres d'outils ou une commande
dans le menu d'un élément du menu. Tu peux aussi lui attribuer
un raccourci clavier en utilisant la fenêtre des macros.


'-----------------------------------
Sub Inserer_Commentaire()
x = Application.InputBox("Texte du commentaire.", Type:=2)
If x = False Then Exit Sub
If x = "" Then Exit Sub
With ActiveCell
.Parent.Unprotect
.ClearComments
.AddComment x
.Parent.Protect
End With
End Sub
'-----------------------------------


MichD
--------------------------------------------
"J@@" a écrit dans le message de groupe de discussion : ie1ivj$70d$

Bonjour michdenis
Eh bien ce paramètre n'existe pas sous Excel 2000 : Erreur 1004 + pas
trouvé dans l'explorateur d'objets.

C'est ennuyeux car l'utilisateur insère de très nombreux commentaires,
et moi je veux
-l'empêcher d'ajouter des colonnes (ce qui va bien avec la protection
Verrcls),
-mais aussi protéger les zones à formules : ligne 2 et 12 colonnes,
toutes les 10 colonnes à partir de la colonne i.

A ton avis si, à l'ouverture du fichier, je copiais ma ligne et mes
colonnes de formules, pour les recoller
- avant fermeture ou enregistrement ou appui sur un bouton qui lance un TCD,
ce montage te semble-t-il raisonnable, ou farfelu.

merci pour ton aide
@+
J@@

Le 11/12/2010 15:57, michdenis a écrit :
Bonjour,

Je ne me souviens plus si ce paramètre existait pour la version 2000
AllowFormattingCells:=True Si ce dernier est absent, tu vas avoir
de la difficulté à faire ce que tu désires !


Sub Verrcls()
With ActiveSheet
.EnableAutoFilter = True
.EnableOutlining = True
.Protect UserInterfaceOnly:=True, AllowFormattingCells:=True
End With
End Sub

MichD
--------------------------------------------


"J@@" a écrit dans le message de groupe de discussion : ie16of$co2$

Rebonjour Isabelle
Problème : mes formules ne sont plus protégées avec DrawingObjects:úlse

Peut-on y faire quelque chose?
Merci
@+
J@@

Le 11/12/2010 10:58, isabelle a écrit :
salut J@@,

DrawingObjects:úlse

@+
isabelle

Le 2010-12-11 15:11, J@@ a écrit :
Bonjour à tous
Sous Excel 2000, j'utilise le code suivant pour permettre le filtrage
malgré la protection de la feuille.

'Benead
Sub Verrcls()
With ActiveSheet
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

Mais je souhaite que l'utilisateur puisse, dans la feuille protégée, à
partir de la ligne 4:
- insérer/masquer/supprimer des commentaires dans toutes les cellules
- insérer/supprimer des lignes

Merci pour l'aide
@+
J@@





Avatar
J
Bonjour Isabelle
et merci beaucoup pour cette solution.
Un merci tardif, le boulot et un blocage adsl m'ayant tenu à l'écart.
@+
Amicalement
J@@

Le 12/12/2010 09:13, isabelle a écrit :
correction,
il faut enlever le point devant Password

isabelle
,

Le 2010-12-12 13:58, isabelle a écrit :
salut J@@,

une autre solution serait un bouton perso sur la fenêtre du clic droit,

Sub MesCommentaire()
'executer Cette macro à l'ouverture du classeur
With Application.CommandBars("Cell").Controls.Add(msoControlButton)
.Caption = "Inscrire ou modifier un commentaire"
.BeginGroup = True
.FaceId = 252
.OnAction = "Inscrire_ou_modifier_un_commentaire"
End With
End Sub

Sub MesCommentaire_Reset()
'executer Cette macro à la fermeture du classeur
Application.CommandBars("Cell").Reset
End Sub

Sub Inscrire_ou_modifier_un_commentaire()
ActiveSheet.Unprotect "zaza"
On Error Resume Next
commentaire = ActiveCell.Comment.Text
If Err.Number = 91 Then
Err.Clear
titre$ = "Ajout de commentaire"
rep$ = InputBox("Inscrire votre commentaire", titre$, "")
ActiveCell.AddComment
ActiveCell.Comment.Text Text:=rep$
Else
titre$ = "Modification de commentaire"
rep$ = InputBox("Modifier votre commentaire", titre$, commentaire)
ActiveCell.Comment.Text Text:=rep$
End If
With ActiveSheet
.Password = "zaza"
.Protect UserInterfaceOnly:=True
.EnableAutoFilter = True
.EnableOutlining = True
End With
End Sub

@+
isabelle
Avatar
J
Bonjour michdenis
et grand merci pour ton aide.
Une excellente solution.
Ce remerciement est tardif car le travail et ma connexion m'ont tenu à
l'écart.
@+
amicalement
J@@


Le 13/12/2010 00:43, michdenis a écrit :
Bonjour,

Tu peux utiliser le code suivant pour insérer un commentaire
dans une cellule active. Au besoin, il est possible d'ajouter des
caractéristiques particulières au commentaire comme si tu le
faisais manuellement.

Comme tu travailles à partir d'Excel 2000, tu peux ajouter un bouton
de commande dans une des barres d'outils ou une commande
dans le menu d'un élément du menu. Tu peux aussi lui attribuer
un raccourci clavier en utilisant la fenêtre des macros.


'-----------------------------------
Sub Inserer_Commentaire()
x = Application.InputBox("Texte du commentaire.", Type:=2)
If x = False Then Exit Sub
If x = "" Then Exit Sub
With ActiveCell
.Parent.Unprotect
.ClearComments
.AddComment x
.Parent.Protect
End With
End Sub
'-----------------------------------


MichD
1 2