Modifier options de verrouillage dans Macro enregistrée

Bonjour

Je viens de réaliser une Macro pour la lancer lors d'un clic sur Bouton. Cette Macro désactive la protection de la feuille pour faire ses taches puis réactive la protection à la fin. Le probleme, c'est qu'au moment de l'enregistrement, je n'ai pas veillé à cocher les bonnes authorisation dans la vérouillage.

Ainsi, à chaque fois qu'elle se lance, 3 options essentielles sont vérouillées :

- Création de liens Hypertexte
- Utilisation des Filtres d'un tableau
- Modification des objets

capture d e cran 2024 04 02 a 15 38 36

En tentant de comprendre les lignes VBA générées par l'enregistrement de cette macro, je comprend que rien ne correspond au parametrage du verouillage (à la fin du code).

Est il possible de paramétrer ce verouillage de facon à retrouver les bonnes authorisations à la fermeture de ma macro.

Voici pour info le code de ma macro

Sub AjoutClient()
'
' AjoutClient Macro
'

'
    If Range("B2") = "" Then Exit Sub
    ActiveSheet.Unprotect ("alxdesign")
    Range("A5").Select
    Selection.ListObject.ListRows.Add (1)
    Rows("6:6").Select
    Selection.Copy
    Range("A5").Select
    Selection.PasteSpecial Paste:=xlPasteFormats, Operation:=xlNone, _
        SkipBlanks:=False, Transpose:=False
    Application.CutCopyMode = False
    Range("C2").Select
    Selection.Copy
    Range("A5").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("B2").Select
    Application.CutCopyMode = False
    Selection.Copy
    Range("B5").Select
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
        :=False, Transpose:=False
    Range("E6").Select
    ActiveWindow.SmallScroll Down:=0
    Application.CutCopyMode = False
    Selection.Copy
    Range("E5").Select
    ActiveSheet.Paste
    Range("E5").Select
    Application.CutCopyMode = False
    ActiveCell.FormulaR1C1 = "Quelle Adresse ?"
    Selection.ConvertToLinkedDataType ServiceID:=536870912, LanguageCulture:= _
        "fr-FR"
    Range("B2").Select
    ActiveCell.FormulaR1C1 = ""
    Range("B2").Select
    Selection.ClearContents
    Range("C5").Select
    ActiveSheet.Protect ("alxdesign")
End Sub

Merci pour votre aide ;)

Bonjour,

Voir ICI.

Merci beaucoup ! Je vais regarder çà et l'intégrer. Faut il intégrer la ligne

Mafeuille. Protect (Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly, AllowFormattingCells, AllowFormattingColumns, AllowFormattingRows, AllowInsertingColumns, AllowInsertingRows, AllowInsertingHyperlinks, AllowDeletingColumns, AllowDeletingRows, AllowSorting, AllowFiltering, AllowUsingPivotTables )

en mettant des valeurs False et True pour chaque propriétés de la parenthèse ?

Re,

Si vous utilisez les arguments nommées, alors il suffit d'indiquer les arguments par leur nom, suivi de := et suivi de la valeur désirée de l'option. Si l'option doit avoir la valeur par défaut alors on peut omettre cette option. Exemple :

ActiveSheet.Protect AllowFiltering:=True, AllowInsertingHyperlinks:=True, Password:="montoto"

Merci, c'est exactement ce qu'il me fallait ;) Ca fonctionne parfaitement bien !

Rechercher des sujets similaires à "modifier options verrouillage macro enregistree"