comment dans cette formule je peux remplacer le imputbox=20
par un userform (c'est pour faire plus jolie)bien entendu=20
avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,=20
Cancel As Boolean)
Dim pASs As String
pASs =3D InputBox("Pour enregistrer, saisissez le mot de=20
passe", "MPFE Contr=F4le", "*****")
If pASs <> "1964" Then Cancel =3D True
End Sub
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
LeSteph
Bonsoir, **** En premier lieu il me semble: Tu pourrais enregistrer le fichier en lecture seule avec mot de passe ************************************ ainsi seuls les utilisateurs habilités à ouvrir ce fichier autrement pourront le modifier. **********************************
"PTIFRED" a écrit dans le message de news: salut comment dans cette formule je peux remplacer le imputbox En rectifiant un peu le code l'inputbox n'est pas si mauvaise solution
.. dans cette formule rien n'empêche un Break..Ctrl pause. dans ce cas le fichier s'enregistrera quand même.. mais c'est accessoire... et rien empêche de l'enregistrer sous un autre nom. ...oublions ces détails qui font en partie que ...tout ceci et ce qui suit constituent à mon sens de mauvaises méthodes.
Mais si tel est ton souhait: Il faudra aussi verrouiller le projet. Sinon on vient voir le code
Il faut aller dans VBA et insérer un userform l'ajuster , y mettre un textbox et un commandbutton et surtout surtout mettre la propriété ShowModal à False. Ensuite par click droit puis code ou bien Dblclic surle CommandButton:
'ajouter ceci dans le module du UserForm '**** Private Sub Commandbutton1_click()
If TextBox1.Value = "1664" Then ActiveWorkbook.Close True Else ActiveWorkbook.Close False End If UserForm1.Hide End Sub
'Et ceci dans le module de thisworkbook '******* Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) On Error GoTo sortie: UserForm1.Show Exit Sub sortie: UserForm1.Hide ThisWorkbook.Close False
End Sub '***** 'amicalement (et excuse mais je sais pas pourquoi j'aime pas ce truc) 'lSteph "PTIFRED" a écrit dans le message de news: 2f8401c4a3d6$35733cd0$ salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub
merci de votre aide pti fred
Bonsoir,
****
En premier lieu il me semble:
Tu pourrais enregistrer le fichier en lecture seule avec mot de passe
************************************
ainsi seuls les utilisateurs habilités à ouvrir ce fichier autrement
pourront le modifier.
**********************************
"PTIFRED" a écrit dans le message de news: salut
comment dans cette formule je peux remplacer le imputbox
En rectifiant un peu le code l'inputbox n'est pas si mauvaise solution
.. dans cette formule rien n'empêche un Break..Ctrl pause. dans ce cas le
fichier s'enregistrera quand même..
mais c'est accessoire... et rien empêche de l'enregistrer sous un autre nom.
...oublions ces détails qui font en partie que ...tout ceci et ce qui suit
constituent à mon sens
de mauvaises méthodes.
Mais si tel est ton souhait:
Il faudra aussi verrouiller le projet. Sinon on vient voir le code
Il faut aller dans VBA et insérer un userform
l'ajuster , y mettre un textbox et un commandbutton
et surtout
surtout mettre la propriété ShowModal à False.
Ensuite par click droit puis code
ou bien Dblclic surle CommandButton:
'ajouter ceci dans le module du UserForm
'****
Private Sub Commandbutton1_click()
If TextBox1.Value = "1664" Then
ActiveWorkbook.Close True
Else
ActiveWorkbook.Close False
End If
UserForm1.Hide
End Sub
'Et ceci dans le module de thisworkbook
'*******
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As
Boolean)
On Error GoTo sortie:
UserForm1.Show
Exit Sub
sortie:
UserForm1.Hide
ThisWorkbook.Close False
End Sub
'*****
'amicalement (et excuse mais je sais pas pourquoi j'aime pas ce truc)
'lSteph
"PTIFRED" <FREDERICK.LEFEBVRE@TELE2.FR> a écrit dans le message de news:
2f8401c4a3d6$35733cd0$a401280a@phx.gbl...
salut
comment dans cette formule je peux remplacer le imputbox
par un userform (c'est pour faire plus jolie)bien entendu
avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,
Cancel As Boolean)
Dim pASs As String
pASs = InputBox("Pour enregistrer, saisissez le mot de
passe", "MPFE Contrôle", "*****")
If pASs <> "1964" Then Cancel = True
End Sub
Bonsoir, **** En premier lieu il me semble: Tu pourrais enregistrer le fichier en lecture seule avec mot de passe ************************************ ainsi seuls les utilisateurs habilités à ouvrir ce fichier autrement pourront le modifier. **********************************
"PTIFRED" a écrit dans le message de news: salut comment dans cette formule je peux remplacer le imputbox En rectifiant un peu le code l'inputbox n'est pas si mauvaise solution
.. dans cette formule rien n'empêche un Break..Ctrl pause. dans ce cas le fichier s'enregistrera quand même.. mais c'est accessoire... et rien empêche de l'enregistrer sous un autre nom. ...oublions ces détails qui font en partie que ...tout ceci et ce qui suit constituent à mon sens de mauvaises méthodes.
Mais si tel est ton souhait: Il faudra aussi verrouiller le projet. Sinon on vient voir le code
Il faut aller dans VBA et insérer un userform l'ajuster , y mettre un textbox et un commandbutton et surtout surtout mettre la propriété ShowModal à False. Ensuite par click droit puis code ou bien Dblclic surle CommandButton:
'ajouter ceci dans le module du UserForm '**** Private Sub Commandbutton1_click()
If TextBox1.Value = "1664" Then ActiveWorkbook.Close True Else ActiveWorkbook.Close False End If UserForm1.Hide End Sub
'Et ceci dans le module de thisworkbook '******* Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) On Error GoTo sortie: UserForm1.Show Exit Sub sortie: UserForm1.Hide ThisWorkbook.Close False
End Sub '***** 'amicalement (et excuse mais je sais pas pourquoi j'aime pas ce truc) 'lSteph "PTIFRED" a écrit dans le message de news: 2f8401c4a3d6$35733cd0$ salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub
merci de votre aide pti fred
LeSteph
Bonsoir,
j'essaie d'effacer mon précédent message mais ... après plus de tests je confirme: ne pas utiliser cette méthode , en plus un des codes n'est pas le bon e t l'alternative plante aussi. Enfin, comme je patouille la dessus je préfère l'écrire que de laisser cela en l'état... Désolé...
Sinon reste que ton code est interceptable par ctrl pause et que faute de verrouilage du projet le code est accessible Au demeurant, un enregistrement Lecture seule avec mot de passe pour acces en écriture serait bien plus simple et efficace.
Amicalement.
lSteph
"PTIFRED" a écrit dans le message de news: 2f8401c4a3d6$35733cd0$ salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub
merci de votre aide pti fred
Bonsoir,
j'essaie d'effacer mon précédent message mais ...
après plus de tests je confirme: ne pas utiliser cette méthode , en plus
un des codes n'est pas le bon e t l'alternative plante aussi.
Enfin, comme je patouille la dessus je préfère l'écrire que de laisser cela
en l'état...
Désolé...
Sinon reste que ton code est interceptable par ctrl pause et que faute de
verrouilage du projet
le code est accessible
Au demeurant, un enregistrement Lecture seule avec mot de passe pour acces
en écriture
serait bien plus simple et efficace.
Amicalement.
lSteph
"PTIFRED" <FREDERICK.LEFEBVRE@TELE2.FR> a écrit dans le message de news:
2f8401c4a3d6$35733cd0$a401280a@phx.gbl...
salut
comment dans cette formule je peux remplacer le imputbox
par un userform (c'est pour faire plus jolie)bien entendu
avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,
Cancel As Boolean)
Dim pASs As String
pASs = InputBox("Pour enregistrer, saisissez le mot de
passe", "MPFE Contrôle", "*****")
If pASs <> "1964" Then Cancel = True
End Sub
j'essaie d'effacer mon précédent message mais ... après plus de tests je confirme: ne pas utiliser cette méthode , en plus un des codes n'est pas le bon e t l'alternative plante aussi. Enfin, comme je patouille la dessus je préfère l'écrire que de laisser cela en l'état... Désolé...
Sinon reste que ton code est interceptable par ctrl pause et que faute de verrouilage du projet le code est accessible Au demeurant, un enregistrement Lecture seule avec mot de passe pour acces en écriture serait bien plus simple et efficace.
Amicalement.
lSteph
"PTIFRED" a écrit dans le message de news: 2f8401c4a3d6$35733cd0$ salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub
merci de votre aide pti fred
leSteph
Bonjour, Pour faire suite et quoique maintenant les précédentes réserves, juste pour le plaisir(curieux et têtu),ceci semble tourner bien sous 97(pas testé 2003), on garde un userform (propriété Showmodal=true),un Textbox et un bouton: 'Dans module1 '*********** Public pASs As String '************ Sub assignit()
pASs = CStr(UserForm1.TextBox1.Value) End Sub '*********** 'dans Thisworkbook '**** Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim test Application.EnableCancelKey = xlDisabled If ThisWorkbook.Saved = False Then test = MsgBox("non enregistré,fermer quand même", 4) If test = 6 Then ThisWorkbook.Saved = True Else Cancel = True End If Else MsgBox "fermeture" End If End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As _ Boolean, Cancel As Boolean) Application.EnableCancelKey = xlDisabled UserForm1.Show
If pASs = "1964" Then pASs = "" Exit Sub Else Cancel = True End If End Sub '***** 'dans le code de userform1 '*** Private Sub CommandButton1_Click() assignit TextBox1.Value = "" UserForm1.Hide End Sub
Private Sub UserForm_Initialize() TextBox1.Value = ""
End Sub '**********
'lSteph
-----Message d'origine----- salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,
Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub
merci de votre aide pti fred .
Bonjour,
Pour faire suite et quoique maintenant les précédentes
réserves, juste pour le plaisir(curieux et têtu),ceci
semble tourner bien sous 97(pas testé 2003), on garde
un userform (propriété Showmodal=true),un Textbox et un
bouton:
'Dans module1
'***********
Public pASs As String
'************
Sub assignit()
pASs = CStr(UserForm1.TextBox1.Value)
End Sub
'***********
'dans Thisworkbook
'****
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim test
Application.EnableCancelKey = xlDisabled
If ThisWorkbook.Saved = False Then
test = MsgBox("non enregistré,fermer quand même", 4)
If test = 6 Then
ThisWorkbook.Saved = True
Else
Cancel = True
End If
Else
MsgBox "fermeture"
End If
End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As _
Boolean, Cancel As Boolean)
Application.EnableCancelKey = xlDisabled
UserForm1.Show
If pASs = "1964" Then
pASs = ""
Exit Sub
Else
Cancel = True
End If
End Sub
'*****
'dans le code de userform1
'***
Private Sub CommandButton1_Click()
assignit
TextBox1.Value = ""
UserForm1.Hide
End Sub
Private Sub UserForm_Initialize()
TextBox1.Value = ""
End Sub
'**********
'lSteph
-----Message d'origine-----
salut
comment dans cette formule je peux remplacer le imputbox
par un userform (c'est pour faire plus jolie)bien entendu
avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As
Boolean,
Cancel As Boolean)
Dim pASs As String
pASs = InputBox("Pour enregistrer, saisissez le mot de
passe", "MPFE Contrôle", "*****")
If pASs <> "1964" Then Cancel = True
End Sub
Bonjour, Pour faire suite et quoique maintenant les précédentes réserves, juste pour le plaisir(curieux et têtu),ceci semble tourner bien sous 97(pas testé 2003), on garde un userform (propriété Showmodal=true),un Textbox et un bouton: 'Dans module1 '*********** Public pASs As String '************ Sub assignit()
pASs = CStr(UserForm1.TextBox1.Value) End Sub '*********** 'dans Thisworkbook '**** Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim test Application.EnableCancelKey = xlDisabled If ThisWorkbook.Saved = False Then test = MsgBox("non enregistré,fermer quand même", 4) If test = 6 Then ThisWorkbook.Saved = True Else Cancel = True End If Else MsgBox "fermeture" End If End Sub
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As _ Boolean, Cancel As Boolean) Application.EnableCancelKey = xlDisabled UserForm1.Show
If pASs = "1964" Then pASs = "" Exit Sub Else Cancel = True End If End Sub '***** 'dans le code de userform1 '*** Private Sub CommandButton1_Click() assignit TextBox1.Value = "" UserForm1.Hide End Sub
Private Sub UserForm_Initialize() TextBox1.Value = ""
End Sub '**********
'lSteph
-----Message d'origine----- salut
comment dans cette formule je peux remplacer le imputbox par un userform (c'est pour faire plus jolie)bien entendu avec la meme utilisation
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean,
Cancel As Boolean) Dim pASs As String pASs = InputBox("Pour enregistrer, saisissez le mot de passe", "MPFE Contrôle", "*****") If pASs <> "1964" Then Cancel = True End Sub