OVH Cloud OVH Cloud

inputbox

2 réponses
Avatar
Céd
Salut =E0 tous,

Voici mon probl=E8me :
J'ai trouv=E9 sur le site le code pour prot=E9ger en 1 x=20
toutes les feuilles d'un classeur Excel. Le mot de passe=20
est =E9crit dans le code. J'aimerais qu'une inputbox=20
s'affiche pour pouvoir choisir le mot de passe que je veux=20
utiliser et qu'il reprenne cette donn=E9e pour l'inclure=20
dans le code.
Voil=E0 ce que j'ai d=E9j=E0 fait mais je ne sais pas comment=20
faire pour reprendre la valeur de l'inputbox.

Sub proTect()
Dim wS As Worksheet
Dim Message, Titre, Affichage
Dim mot_passe As String
Message =3D "Taper le mot de passe d=E9sir=E9"
Titre =3D "MOT DE PASSE"
Affichage =3D InputBox(Message, Titre)
mot_passe =3D InputBox.Value
Application.ScreenUpdating =3D False
For Each wS In ThisWorkbook.Worksheets
wS.proTect Password:=3Dmot_passe
=20
Next
End Sub

Si qqn a une id=E9e, merci du coup de main.

C=E9d

2 réponses

Avatar
ng
Salut,

En fait inputbox est une fonction renvoyant directement la valeur saisie :

Dim sStr as string
sStr=InputBox("Test")
If sStr <> "" then
'ok
else
'annulé
end if

Sub proTect()
Dim wS As Worksheet,mot_passe As String
mot_passe = InputBox("Taper le mot de passe désiré", "MOT DE PASSE")
if mot_passe<>"" then
Application.ScreenUpdating = False
For Each wS In ThisWorkbook.Worksheets
wS.proTect Password:=mot_passe
Next
else
msgbox "Annulé"
end if
End Sub

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/


"Céd" a écrit dans le message de news:
8dd701c3ea69$28a7d820$
Salut à tous,

Voici mon problème :
J'ai trouvé sur le site le code pour protéger en 1 x
toutes les feuilles d'un classeur Excel. Le mot de passe
est écrit dans le code. J'aimerais qu'une inputbox
s'affiche pour pouvoir choisir le mot de passe que je veux
utiliser et qu'il reprenne cette donnée pour l'inclure
dans le code.
Voilà ce que j'ai déjà fait mais je ne sais pas comment
faire pour reprendre la valeur de l'inputbox.

Sub proTect()
Dim wS As Worksheet
Dim Message, Titre, Affichage
Dim mot_passe As String
Message = "Taper le mot de passe désiré"
Titre = "MOT DE PASSE"
Affichage = InputBox(Message, Titre)
mot_passe = InputBox.Value
Application.ScreenUpdating = False
For Each wS In ThisWorkbook.Worksheets
wS.proTect Password:=mot_passe

Next
End Sub

Si qqn a une idée, merci du coup de main.

Céd
Avatar
Céd
GE-NIAL !!C'est tout à fait ce que je voulais.

Un grand merci Nicolas ! J'espère pouvoir te renvoyer
l'ascenceur un jour.

Céd

-----Message d'origine-----
Salut,

En fait inputbox est une fonction renvoyant directement


la valeur saisie :

Dim sStr as string
sStr=InputBox("Test")
If sStr <> "" then
'ok
else
'annulé
end if

Sub proTect()
Dim wS As Worksheet,mot_passe As String
mot_passe = InputBox("Taper le mot de passe désiré", "MOT


DE PASSE")
if mot_passe<>"" then
Application.ScreenUpdating = False
For Each wS In ThisWorkbook.Worksheets
wS.proTect Password:=mot_passe
Next
else
msgbox "Annulé"
end if
End Sub

--
Nicolas G.
FAQ VB : http://faq.vb.free.fr
API Guide : http://www.allapi.net
Google Groups : http://groups.google.fr/
MZ-Tools : http://www.mztools.com/


"Céd" a écrit dans


le message de news:
8dd701c3ea69$28a7d820$
Salut à tous,

Voici mon problème :
J'ai trouvé sur le site le code pour protéger en 1 x
toutes les feuilles d'un classeur Excel. Le mot de passe
est écrit dans le code. J'aimerais qu'une inputbox
s'affiche pour pouvoir choisir le mot de passe que je veux
utiliser et qu'il reprenne cette donnée pour l'inclure
dans le code.
Voilà ce que j'ai déjà fait mais je ne sais pas comment
faire pour reprendre la valeur de l'inputbox.

Sub proTect()
Dim wS As Worksheet
Dim Message, Titre, Affichage
Dim mot_passe As String
Message = "Taper le mot de passe désiré"
Titre = "MOT DE PASSE"
Affichage = InputBox(Message, Titre)
mot_passe = InputBox.Value
Application.ScreenUpdating = False
For Each wS In ThisWorkbook.Worksheets
wS.proTect Password:=mot_passe

Next
End Sub

Si qqn a une idée, merci du coup de main.

Céd


.