Protection cellules permettant tout de même de masquer et afficher colonne

Hum..... à croire que vous refusez de mettre les balises de code


Le code fonctionne, pas de soucis coté des boutons.
vérifiez si les boutons sont bien associés aux bons codes

Désolé mais je ne comprends pas comment mettre les balises de code , je pensais qu'il fallait les même couleur que sur excel.

Les boutons fonctionnent quand la feuille n'est pas protégée mais à l'inverse ils ne fonctionnent pas .

Chaque bouton est associé à son code

Désolé mais je ne comprends pas comment mettre les balises de code , je pensais qu'il fallait les même couleur que sur excel.

Je vous l'ai expliqué avant. Vous avez une barre de menu. Il suffit de cliquer sur l'icone </> et de coller le code dans la fenêtre


Les boutons fonctionnent quand la feuille n'est pas protégée mais à l'inverse ils ne fonctionnent pas .

Dans votre fichier que j'ai sous la main, aucun soucis.
Cela fonctionnait précédemment pourtant ? --> votre post --> https://forum.excel-pratique.com/s/goto/1226020
Vous avez vérifié sur chaque feuille ?

Re,

Je vous joint le fichier à jour , si vous pouvez y jeter quelques yeux svp.

Le code fonctionne sur la feuille recto mais pas extraction parc loc .

Cdt

Il y a du nettoyage à faire dans votre fichier !

Dans le module 10, vous avez 1 code Open et une Function. C'est à supprimer.
Refaites un essai après

Ensuite :
- le code que je vous ai donné ici n'est pas repris --> https://forum.excel-pratique.com/s/goto/1225883
- Dans votre feuille Extraction Parc Loc, il y a deux codes inutiles. Click droite sur l'onglet, puis choisir "Visualiser le code" pour les voir. Ensuite, supprimez-les

Ok ca fonctionne, merci

Oui j'ai finalement supprimé le bouton tout afficher tout masquer qui après réflexion n'était pas de grande utilité

Pour protéger l'onglet planning projet Il me reste a créer des boutons reprenant les regroupements de lignes

Après cela j'aurai terminé :)

Ok c'est bon alors

- Pour votre code OPEN, remplacez aussi recto par Feuil6 et Extraction Parc Loc par Feuil1
- Le module 1 ne contient rien. Donc vous pouvez le supprimer

Puis pour les autres feuilles où vous avez des boutons on peut aussi modifier dans la même philosophie que pour la feuille Recto si vous voulez

Sinon il y a du ménage à faire dans votre fichier... en tout cas cela vaut le peine de passer en revue le tout

Oui j'ai des modules avec d'anciens codes inutilisé .

Je vais supprimer ces modules

Je vais supprimer ces modules

Bonne idée. Ce sera plus clair

Si besoin d'aide dites-moi

Re,

Sur l'onglet Planning projet , j'ai créé un bouton pour masquer afficher les lignes 5 et 6 que j'ai affecté à une macro que j'ai essayé de réaliser comme un grand... mais je suis encore petit . j'ai un message d'erreur ==> erreur d'exécution 1004 la méthode Lines de l'objet worksheet à échoué

Voici le code que j'ai placé dans le module 2 :

Sub AfficherMasquerOpportPlanning()
Application.ScreenUpdating = False

With Feuil3
    With .Shapes(Application.Caller).DrawingObject
        If .Caption = "Afficher Opport" Then
            .Caption = "Masquer Opport"
        Else:
            .Caption = "Afficher Opport"
        End If
    End With
    .Lines("5:6").Hidden = Not .Lines("5:6").Hidden
    End With
Application.ScreenUpdating = True
End Sub

PS: le nom du bouton passe bien de "afficher" à "masquer" mais les lignes ne se masquent/affichent pas

j'ai un message d'erreur ==> erreur d'exécution 1004 la méthode Lines de l'objet worksheet à échoué

Ce n'est pas LINES qu'il faut mais ROWS

tant d'ignorance

Ca fonctionne

Re,

Voilà c'est fait

Je pense en avoir terminé .

Merci pour votre patience et votre aide!

Bonne fin de journée

Bonjour

Je reviens vers vous car en ouvrant mon fichier ce jour et en testant les boutons j'ai reçu des messages d'erreur seulement lorsque les feuilles sont protégées.

Je ne comprends pas , je n'ai pas le souvenir d'avoir supprimé/modifié un code nécessaire j'ai supprimé les modules qui n'étaient pas utilisé.

Cela concerne les feuille "PlanningProjet" , " Extraction Parc Loc" , et "Recto"

Pourriez vous y jeter un œil svp?

En vous remerciant d'avance pour votre retour.

Bon après midi

Cdt

Bonjour

Votre code Open n'est pas correct.
Comme ceci :

Private Sub Workbook_Open()
Feuil6.Protect "BDTDPL", DrawingObjects:=False, UserInterfaceOnly:=True
Feuil1.Protect "BDTDPL", DrawingObjects:=False, UserInterfaceOnly:=True
Feuil3.Protect "BDTDPL", DrawingObjects:=False, UserInterfaceOnly:=True
End Sub

Cela n'a rien à voir avec le souci mais je vois qu'il y a toujours quelques soucis :
- dans les Feuilles Recto et Extraction Parc Loc : ce code ne sert pas
- dans les modules 3, 8 : les codes ne servent pas. Ces deux modules peuvent être supprimés

- dans le module 7 : c'est ok ça marche mais pas de changement du nom du bouton.
- dans le module 2, vous n'avez suivi tout ce que je vous ai écrit ici --> https://forum.excel-pratique.com/s/goto/1225883 (dans "instructions à suivre")

Après dans la feuille Extraction Parc Loc, les boutons ne changent pas de nom. Mais là je n'ai pas regardé et c'est peut être normal

Crdlt

Re

Merci pour le retour.

J'ai remplacé le code open, j'ai sup les module 3 et 8

Dans le module 2 j'ai fait ceci :

" En haut du module où se trouve le code, mettez cette ligne juste en dessous de l'instruction "Option explicit" --> Option Compare Text"
- dans un message précédent (https://forum.excel-pratique.com/s/goto/1223710 - Point 3) je vous avais fait ajouté une ligne --> Dim Onoff as boolean. Vous pouvez la supprimer"

Cela donne tout en haut du module:

Option Explicit
Option Compare Text

J'ai toujours le même message d'erreur quand les feuilles sont protégées

Dans extraction parc loc oui c'est normal que le nom des boutons ne changent pas.

Cdt

Re

Ok c'est bon comme vous avez fait

J'ai toujours le même message d'erreur quand les feuilles sont protégées

Pas d'erreur de mon coté. Attention qu'une fois les modifications appliquées vous devez enregistrer le fichier et fermer excel avant de réouvrir

Bonjour

Effectivement j'avais zappé cette étapes.

Ca fonctionne.

j'aimerai protéger les boutons afin que l'on ne puisse pas les renommer ou affecter une autre macro.

En effet en protégeant la feuille , les options via le clique droit sur les boutons sont tout de même accessible.

j'imagine que cela se passe dans VBA?

cdt

Bonjour

j'aimerai protéger les boutons afin que l'on ne puisse pas les renommer ou affecter une autre macro.
En effet en protégeant la feuille , les options via le clique droit sur les boutons sont tout de même accessible.

Allez au plus simple, ajoutez la ligne ci-dessous en entête des 2 modules (donc avant la première SUB de chaque module)

Option Private Module

Crdlt

Bonjour, merci pour le retour.

j'ai copier la ligne en entête , j'ai enregistré fermé réouvert mais les boutons sont toujours re-nomable .

Cela donne :

Module 2 :

Option Private Module
Option Explicit
Option Compare Text
Sub AfficherMasquerOpport1()
Application.ScreenUpdating = False

With Feuil6
    With .Shapes(Application.Caller).DrawingObject
        If .Caption = "Afficher Opport 1" Then
            .Caption = "Masquer Opport 1"
        Else:
            .Caption = "Afficher Opport 1"
        End If
    End With
    .Columns("f:f").Hidden = Not .Columns("F:F").Hidden
End With

With Feuil7
    .Visible = Not .Visible
End With
Application.ScreenUpdating = True
End Sub

Module 7:

Option Private Module
Sub MasquerOpport1Parcloc()
Range("D:IU").EntireColumn.Hidden = True
End Sub

Une erreur?

Cdt

Rechercher des sujets similaires à "protection permettant tout meme masquer afficher colonne"