Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

protection feuille

M

marc21

Guest
Bonjour a tous,
Ma question, quand je met unprotec et protect , j'ai toujours une erreur lors du lancement de ma macro, Je suppose que c'est l'emplacement qui est erroné...., je l'ai enlever, mais à quel endroit du code doit il etre ?
voila mon code :
Sub Feuille1 ()
Msg = Sheets("Feuille 1").Cells(18, 18) ' "Attention."
Style = vbYesNo + vbCritical + vbDefaultButton2
Title = "Attention.... RAPPEL !!!"
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then
Sheets("Année 04").Select
ActiveWindow.SmallScroll Down:=-15
Range("B310:z339").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("novembre 04").Select
Range("A5").Select
ActiveSheet.Paste
Application.CutCopyMode = False
Selection.Borders(xlDiagonalDown).LineStyle = xlNone
Selection.Borders(xlDiagonalUp).LineStyle = xlNone
With Selection.Borders(xlEdgeLeft)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeTop)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeBottom)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlEdgeRight)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideVertical)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
With Selection.Borders(xlInsideHorizontal)
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
Range("A1:U1").Select
End If
End Sub

Merci d'avance
Marc21
 
M

Michel_M

Guest
Bonsoir,

Il faudrait que tu regardes sur quelle ligne tu plantes mais à 1° vue c'est sur ta feuille "novembre 04"

Dans ce cas à la ligne d'en dessous, tu écris: activesheet.unprotect

ou tu fais des essais avec l'enregistreur

autre chose

Pour ton quadrillage, il peut être fait avec une seule ligne de VBA:

Selection.Borders.Weight = xlThin

A+
Michel
 
M

Michel_M

Guest
Re,

Effectivement, je t'avais dit une anerie.
essaies:

If Response = vbYes Then
Sheets("novembre 04").Unprotect
Sheets("Année 04").Select

N'oublie pas de reprotéger en fin de macro

Bon appétit

Michel
 
M

marc21

Guest
J'ai esssayer, cela marche, il me demande le mot de passe par msgbox, mais n'y a t il un moyen de le faire sans avoir la demande par msgbox, qu'il execute en arrière plan, même en lui donnant le mot de passe dans le code comme cela , il le fait automatiquement sans devoir taper le code

Merci

Marc
 
M

Moa

Guest
Salut Marc21 !

Sheets("Novembre04").Activate
Sheets("Novembre04").Unprotect password:="BlaBlaBla"

et pour reprotéger en fin de macro :

Sheets("Novembre04").protect password:="BlaBlaBla"

Bonne journée !

@ +

Moa
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…