Comment activer une macro dans une feuille protégé
2 réponses
casiopé
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin
qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma
feuille et aussi le classeur en entier. En effectuant des tests par la
suite, je me suis rendue compte que la macro que j'avais inséré pour les
codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
--
Merci de votre aide !
Résidant à Montréal (Canada)
Un beau bonjour de chez-nous à chez-vous !
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
ST
Insère dans ton code la "déprotection de la feuille ou du classeur" temporairement :
Sub Macro1() ActiveSheet.Protect password:="password" 'ton code ActiveSheet.Unprotect password:="password" End Sub
ST
"casiopé" a écrit dans le message de news:
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma feuille et aussi le classeur en entier. En effectuant des tests par la suite, je me suis rendue compte que la macro que j'avais inséré pour les codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !
Insère dans ton code la "déprotection de la feuille ou du classeur"
temporairement :
Sub Macro1()
ActiveSheet.Protect password:="password"
'ton code
ActiveSheet.Unprotect password:="password"
End Sub
ST
"casiopé" <casiop@discussions.microsoft.com> a écrit dans le message de
news:165A12CE-7616-4D72-8878-AD495CE3D6D0@microsoft.com...
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin
qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma
feuille et aussi le classeur en entier. En effectuant des tests par la
suite, je me suis rendue compte que la macro que j'avais inséré pour les
codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève
la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
--
Merci de votre aide !
Résidant à Montréal (Canada)
Un beau bonjour de chez-nous à chez-vous !
Insère dans ton code la "déprotection de la feuille ou du classeur" temporairement :
Sub Macro1() ActiveSheet.Protect password:="password" 'ton code ActiveSheet.Unprotect password:="password" End Sub
ST
"casiopé" a écrit dans le message de news:
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma feuille et aussi le classeur en entier. En effectuant des tests par la suite, je me suis rendue compte que la macro que j'avais inséré pour les codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !
casiopé
Bonjour ST ! Merci d'avoir la gentillesse de m'offrir ton soutien. En fait, je ne suis pas très habile avec les macros. J'avais eu recours à ce site pour obtenir une macro pour les codes postaux canadiens. Je n'avais qu'à la copier dans Visual Basic et le tour était joué ! Je ne sais pas trop où insérer ta partie de macro avec celle des codes postaux. Voici la macro que j'ai dans Visual Basic et peux-tu m'indiquer où insérer ta partie à toi. En attendant, merci et bonne journée !
'---------------------------------- Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range Set Rg = Intersect(Target, Columns(3)) Application.EnableEvents = False If Not Rg Is Nothing Then For Each c In Rg c.Value = UCase(Application.Trim(c)) If c.Value Like "[A-Z][0-9][A-Z] [0-9][A-Z][0-9]" Or _ c.Value Like "[A-Z][0-9][A-Z][0-9][A-Z][0-9]" Then c.Value = Left(c, 3) & " " & Right(c, 3) c.Interior.ColorIndex = xlNone c.Font.ColorIndex = xlAutomatic Else MsgBox "la saisie du code postal est inexacte" c.Interior.ColorIndex = 3 c.Font.ColorIndex = 2 End If Next End If Application.EnableEvents = True End Sub '----------------------------------
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !
Insère dans ton code la "déprotection de la feuille ou du classeur" temporairement :
Sub Macro1() ActiveSheet.Protect password:="password" 'ton code ActiveSheet.Unprotect password:="password" End Sub
ST
"casiopé" a écrit dans le message de news:
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma feuille et aussi le classeur en entier. En effectuant des tests par la suite, je me suis rendue compte que la macro que j'avais inséré pour les codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !
Bonjour ST !
Merci d'avoir la gentillesse de m'offrir ton soutien.
En fait, je ne suis pas très habile avec les macros.
J'avais eu recours à ce site pour obtenir une macro pour les codes postaux
canadiens. Je n'avais qu'à la copier dans Visual Basic et le tour était joué
!
Je ne sais pas trop où insérer ta partie de macro avec celle des codes
postaux.
Voici la macro que j'ai dans Visual Basic et peux-tu m'indiquer où insérer
ta partie à toi. En attendant, merci et bonne journée !
'----------------------------------
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range
Set Rg = Intersect(Target, Columns(3))
Application.EnableEvents = False
If Not Rg Is Nothing Then
For Each c In Rg
c.Value = UCase(Application.Trim(c))
If c.Value Like "[A-Z][0-9][A-Z] [0-9][A-Z][0-9]" Or _
c.Value Like "[A-Z][0-9][A-Z][0-9][A-Z][0-9]" Then
c.Value = Left(c, 3) & " " & Right(c, 3)
c.Interior.ColorIndex = xlNone
c.Font.ColorIndex = xlAutomatic
Else
MsgBox "la saisie du code postal est inexacte"
c.Interior.ColorIndex = 3
c.Font.ColorIndex = 2
End If
Next
End If
Application.EnableEvents = True
End Sub
'----------------------------------
--
Merci de votre aide !
Résidant à Montréal (Canada)
Un beau bonjour de chez-nous à chez-vous !
Insère dans ton code la "déprotection de la feuille ou du classeur"
temporairement :
Sub Macro1()
ActiveSheet.Protect password:="password"
'ton code
ActiveSheet.Unprotect password:="password"
End Sub
ST
"casiopé" <casiop@discussions.microsoft.com> a écrit dans le message de
news:165A12CE-7616-4D72-8878-AD495CE3D6D0@microsoft.com...
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin
qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma
feuille et aussi le classeur en entier. En effectuant des tests par la
suite, je me suis rendue compte que la macro que j'avais inséré pour les
codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève
la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
--
Merci de votre aide !
Résidant à Montréal (Canada)
Un beau bonjour de chez-nous à chez-vous !
Bonjour ST ! Merci d'avoir la gentillesse de m'offrir ton soutien. En fait, je ne suis pas très habile avec les macros. J'avais eu recours à ce site pour obtenir une macro pour les codes postaux canadiens. Je n'avais qu'à la copier dans Visual Basic et le tour était joué ! Je ne sais pas trop où insérer ta partie de macro avec celle des codes postaux. Voici la macro que j'ai dans Visual Basic et peux-tu m'indiquer où insérer ta partie à toi. En attendant, merci et bonne journée !
'---------------------------------- Private Sub Worksheet_Change(ByVal Target As Range)
Dim Rg As Range Set Rg = Intersect(Target, Columns(3)) Application.EnableEvents = False If Not Rg Is Nothing Then For Each c In Rg c.Value = UCase(Application.Trim(c)) If c.Value Like "[A-Z][0-9][A-Z] [0-9][A-Z][0-9]" Or _ c.Value Like "[A-Z][0-9][A-Z][0-9][A-Z][0-9]" Then c.Value = Left(c, 3) & " " & Right(c, 3) c.Interior.ColorIndex = xlNone c.Font.ColorIndex = xlAutomatic Else MsgBox "la saisie du code postal est inexacte" c.Interior.ColorIndex = 3 c.Font.ColorIndex = 2 End If Next End If Application.EnableEvents = True End Sub '----------------------------------
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !
Insère dans ton code la "déprotection de la feuille ou du classeur" temporairement :
Sub Macro1() ActiveSheet.Protect password:="password" 'ton code ActiveSheet.Unprotect password:="password" End Sub
ST
"casiopé" a écrit dans le message de news:
Bonjour !
Comme mon fichier sera distribué par courriel à plusieurs personnes afin qu'elles y entrent chacune leurs données, j'ai mis une protection sur ma feuille et aussi le classeur en entier. En effectuant des tests par la suite, je me suis rendue compte que la macro que j'avais inséré pour les codes postaux dans Visual Basic refusait de fonctionner. Lorsque j'enlève la
"Protection" sur ma feuille et mon classeur, tout fonctionne bien.
Que dois-je faire ?
Merci !
-- Merci de votre aide ! Résidant à Montréal (Canada) Un beau bonjour de chez-nous à chez-vous !