Masquer des formules

bonjour

j'ai retrouvé dans ce forum une macro pour masquer les formules d'une plage de cellule mais je n'arrive pas à la faire fonctionner dans ma page excel-

Sub Masquer_Formules()

Dim plg As Range

Set plg = Application.InputBox _

("Sélectionner une Plage/Cellule", , , , , , , 8)

plg.FormulaHidden = True

plg.Locked = True

ActiveSheet.Protect

End Sub

Sub Deverrouiller()

ActiveSheet.Unprotect

End Sub

sans doute je l'ai placé au mauvais endroit, je suis bien nulle en VBA...ma plage de formules à masquer est C1:C4

est ce que quelqu'un peut m 'aider pas à pas ?? merci de votre aide

ps : est ce possible de sélectionner des plages non adjacentes ?

daryl

Bonjour,

La procédure est correcte.

Dans l'exemple, la plage de formules à masquer est composée des deux plages disjointes C1:C4 et E1:E4.

35daryl.zip (10.31 Ko)

A+

merci beaucoup

est ce que cette macro peut être rendue automatique ??

daryl

Peux-tu expliquer ce que tu entends par "rendre automatique" ?

Est-ce qu'il s'agit de lancer la procédure suite à un évènement particulier ? Si oui lequel ?

A+

bonsoir

oui je voudrai que dans toutes les cellules de la plage de donnée concernée les cellules soient masquées

j'ai testé la macro elle bugue sur les cellules 2 et 3

merci de votre aide

daryl

Bonsoir,

Oula, oula !

Dans ta demande initiale, il était question de masquer les formules de la plage C1:C4.

Maintenant, tu parles de masquer les cellules ????

Dans le fichier que j'ai joint à ma réponse il n'y a pas de bug sur les cellules C2 et C3.

Qu'est-ce qui a changé ?

Il faut que tu prennes le temps d'expliquer clairement ce que tu cherches à faire et que tu joignes un fichier exemple.

A+

Bonjour,

Proposition à étudier.

Cdlt.

Public Sub Masquer_formules()
Dim rng As Range, DefaultSelect As String

    ActiveSheet.Unprotect
    With Selection
        DefaultSelect = .Address
    End With
    On Error Resume Next
    Application.DisplayAlerts = False
    Set rng = Application.InputBox _
              (prompt:="Sélectionner une plage de cellules.", _
               Title:="Sélection plage", _
               default:=DefaultSelect, _
               Type:=8)
    If Err = 0 Then
        On Error GoTo 0
        Application.DisplayAlerts = True
        With rng
            .FormulaHidden = True: .Locked = True
        End With
    End If
    ActiveSheet.Protect
    Set rng = Nothing

End Sub
Rechercher des sujets similaires à "masquer formules"