Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Majuscule ou minuscule- protection feuille avec mot de passe

2 réponses
Avatar
fredau
Bonjour,
Une macro permettant d'effacer un membre d'une base me pose plusieurs Pbs:
1) J'ai résolu le Pb du bouton "Annuler" de ma boîte de dialogue. A ce
sujet, bizarrerie, j'avais programmé:
If answer (le résultat de l'entrée de l'utilisateur) =false then exit sub
Ca ne marchait pas! Ca marche avec
If answer="Faux" then exit sub
2) Lorsque je veux effacer "DUBOST", ça marche si je l'écris en MAJUSCULE
comme dans la base. Je souhaiterai que cela marche même si l'utilisateur
l'écrit en minuscule, ce qui pour l'instant fait descendre le curseur
jusqu'en bas de la feuille ligne 65536.
3) Je voudrai protéger la feuille avec un mot de passe, en consultant le
forum, j'ai trouvé une réponse qui malheureusement ne fonctionne pas. J'ai
mis en commentaire au début et à la fin de la macro les lignes qui devraient
protéger et déprotéger.


'ActiveSheet.Unprotect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True


'ActiveSheet.Protect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True

le fichier joint est là:
http://cjoint.com/?lEsvqvUMBU

merci pour votre aide


--
Programmeur VBA amateur

2 réponses

Avatar
isabelle
bonjour fredau,

assure toi qu'il y ai le mot de passe "zz" (ou autre) avant d'executé la macro ,
ps/ sur ton classeur il y a une protection mais sans mot de passe.

Sub Supprimeélève()
Dim answer As String
ActiveSheet.Unprotect Password:="zz"
answer = UCase(Application.InputBox(Prompt:="Entrez le nom de l'élève que vous voulez supprimer de votre base. ATTENTION , si vous n'êtes pas sûr, cliquez sur Annuler"))
If answer = "Faux" Then
Exit Sub
Else
If Not IsError(Application.Match(answer, Sheets("Feuil1").Range("B:B"), 0)) Then
x = Application.Match(answer, Sheets("Feuil1").Range("B:B"), 0)
Sheets("Feuil1").Range("A" & x & ":N" & x).ClearContents
Else
MsgBox "ce Nom est innexistant dans la base"
End If
End If
ActiveSheet.Protect Password:="zz", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

isabelle

Bonjour,
Une macro permettant d'effacer un membre d'une base me pose plusieurs Pbs:
1) J'ai résolu le Pb du bouton "Annuler" de ma boîte de dialogue. A ce
sujet, bizarrerie, j'avais programmé:
If answer (le résultat de l'entrée de l'utilisateur) úlse then exit sub
Ca ne marchait pas! Ca marche avec
If answer="Faux" then exit sub
2) Lorsque je veux effacer "DUBOST", ça marche si je l'écris en MAJUSCULE
comme dans la base. Je souhaiterai que cela marche même si l'utilisateur
l'écrit en minuscule, ce qui pour l'instant fait descendre le curseur
jusqu'en bas de la feuille ligne 65536.
3) Je voudrai protéger la feuille avec un mot de passe, en consultant le
forum, j'ai trouvé une réponse qui malheureusement ne fonctionne pas. J'ai
mis en commentaire au début et à la fin de la macro les lignes qui devraient
protéger et déprotéger.


'ActiveSheet.Unprotect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True


'ActiveSheet.Protect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True

le fichier joint est là:
http://cjoint.com/?lEsvqvUMBU

merci pour votre aide




Avatar
fredau
Rebonjour,
Merci beaucoup Isabelle,
J'ai un peu tardé car mon exemple n'était pas tout à fait conforme à mon
applic et j'ai un peu coincé car mes données n'étaient plus en (B:B) mais
(C:C) . C'est réglé.
Pour la protection, il semble que ça marche lorsque l'on n'indique que le
password :
ActiveSheet.Unprotect Password:="zz"
si on rajoute derrière
DrawingObjects:=True, Contents:=True, Scenarios:=True
ça coince.
En tous cas merci
Ah j'oubliais: après ta modif, il a fallu que je change "Faux" en "FAUX". La
gestion de ce bouton Annuler est vraiment bizarre!

--
Programmeur VBA amateur



bonjour fredau,

assure toi qu'il y ai le mot de passe "zz" (ou autre) avant d'executé la macro ,
ps/ sur ton classeur il y a une protection mais sans mot de passe.

Sub Supprimeélève()
Dim answer As String
ActiveSheet.Unprotect Password:="zz"
answer = UCase(Application.InputBox(Prompt:="Entrez le nom de l'élève que vous voulez supprimer de votre base. ATTENTION , si vous n'êtes pas sûr, cliquez sur Annuler"))
If answer = "Faux" Then
Exit Sub
Else
If Not IsError(Application.Match(answer, Sheets("Feuil1").Range("B:B"), 0)) Then
x = Application.Match(answer, Sheets("Feuil1").Range("B:B"), 0)
Sheets("Feuil1").Range("A" & x & ":N" & x).ClearContents
Else
MsgBox "ce Nom est innexistant dans la base"
End If
End If
ActiveSheet.Protect Password:="zz", DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub

isabelle

Bonjour,
Une macro permettant d'effacer un membre d'une base me pose plusieurs Pbs:
1) J'ai résolu le Pb du bouton "Annuler" de ma boîte de dialogue. A ce
sujet, bizarrerie, j'avais programmé:
If answer (le résultat de l'entrée de l'utilisateur) úlse then exit sub
Ca ne marchait pas! Ca marche avec
If answer="Faux" then exit sub
2) Lorsque je veux effacer "DUBOST", ça marche si je l'écris en MAJUSCULE
comme dans la base. Je souhaiterai que cela marche même si l'utilisateur
l'écrit en minuscule, ce qui pour l'instant fait descendre le curseur
jusqu'en bas de la feuille ligne 65536.
3) Je voudrai protéger la feuille avec un mot de passe, en consultant le
forum, j'ai trouvé une réponse qui malheureusement ne fonctionne pas. J'ai
mis en commentaire au début et à la fin de la macro les lignes qui devraient
protéger et déprotéger.


'ActiveSheet.Unprotect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True


'ActiveSheet.Protect Password:="motdepasse", DrawingObjects:=True,
Contents:=True, Scenarios:=True

le fichier joint est là:
http://cjoint.com/?lEsvqvUMBU

merci pour votre aide