Forum |  HardWare.fr | News | Articles | PC | Prix | S'identifier | S'inscrire | Aide | Shop Recherche
1491 connectés 

  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  interdire la modification d'une feuille excel sauf avec userform

 



 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

interdire la modification d'une feuille excel sauf avec userform

n°1374746
Gruber Han​s
Posté le 25-05-2006 à 03:06:19  profilanswer
 

Bonjour à tous.
 
Mon probleme est tres simple: Je souhaite interdire la possibilité de modifier des cellules d'une feuille excel autrement que par le biais d'une interface vba.
 
En fait j'ai cree une petite application/base de données, un formulaire permet de renseigner differentes categories et ces renseignements sont stoqués sur une feuille.
 
Le probleme qui se pose est que les utilisateurs modifient eux memes les champs sur la feuille si ils se rendent compte qu'ils ont fait une erreur, ce qui genere ensuite des erreurs de calcul; par exemple ils vont modifier 08:20 par 08h25 ce qui produira une erreur lorsque cette donnée sera utilisée dans un calcul.
 
merci d'avance pour vos reponses.

mood
Publicité
Posté le 25-05-2006 à 03:06:19  profilanswer
 

n°1374749
galopin01
Posté le 25-05-2006 à 04:44:20  profilanswer
 

Bonjour,
C'est quoi la question ? Protéger la feuille ou apprendre à gérer les saisies en VBA ?
- Si c'est la question est Protéger la feuille : Outils / Protection / Protéger la feuille... avec pour toutes les cellules Format / Cellules  / Protection / Verrouillées.
- Si la question est Contrôler la saisie avec VBA, vaste problème !
De toute façon on peut très bien contrôler la saisie des utilisateurs sans protéger nécessairement la feuille ni passer par un USF.
Il faut que tu précises un peu (beaucoup) ta question et éventuellement joindre un modèle ici si tu veux une réponse adaptée.
Et puis... A première vue, bien que je n'ai pas testé à donf (mais j'y ai quand même passé une petite heure) ça va quand même être coton pour tester la cohérence d'une saisie horaire alors qu'une simple condition de validation sur la cellule suffirait.
A+


Message édité par galopin01 le 25-05-2006 à 05:50:09

---------------
roger
n°1374754
kiki29
Posté le 25-05-2006 à 08:40:00  profilanswer
 

A priori des instructions style ActiveSheet.unprotect,ActiveSheet.protect et UserForm.ShowModal=False, protection par Password du code VBA même si des utilitaires permettent d'en changer instantanément


Message édité par kiki29 le 25-05-2006 à 17:27:57
n°1375141
Gruber Han​s
Posté le 25-05-2006 à 21:49:54  profilanswer
 

Merci pour vos premieres reponses.
 
Je vais essayer de detailler un peu plus mon probleme car c'est vrai qu'apres relecture c'est assez vague.
 
Mon application permet de gerer des entrées et sorties de citernes.
lorsque la citerne arrive sur le site l'utilisateur clique sur un bouton de la feuille, ce qui affiche un formulaire où il doit remplir les champs suivants:
-nom de la citerne
-heure d'arrivée prevue
-heure d'arrivée sur le site
 
lorsque la citerne repart il clique sur un autre bouton qui affiche un autre formulaire, sur celui ci il remplit un champ "heure de depart"
 
à partir de ces données mon application genere une foule de stats.
 
le probleme qui se pose regulierement est que l'utilisateur intervient parfois directement sur la feuille du classeur excel (qui fait office de base de données) pour modifier des champs deja entrés auparevent ce qui peut generer des erreurs dans mes calculs de stats.
 
Je souhaiterai donc proteger la feuille contre les modifications "manuelles", ce que je sais faire, mais que cette feuille puisse etre modifiée lorsque le formulaire doit venir y ecrire des données.
 

n°1375188
galopin01
Posté le 25-05-2006 à 22:54:15  profilanswer
 

bonsoir,
Mets la macro suivante dans ton ThisWorkbook :
 
Private Sub Workbook_Open()
Worksheets("blabla" ).Protect Password:="galopin", UserInterfaceOnly:=True
End Sub
 
La feuille sera protégée vis à vis de l'utilisateur mais restera accessible aux macros.
A+


---------------
roger
n°1375189
kiki29
Posté le 25-05-2006 à 22:55:31  profilanswer
 

zz


Message édité par kiki29 le 25-05-2006 à 22:56:43
n°1375292
Gruber Han​s
Posté le 26-05-2006 à 00:59:23  profilanswer
 

Merci beaucoup pour ta reponse galopin (qui rejoint celle de kiki dailleurs, avec les precisions qu'il me fallait).
 
Edit:Ca marche parfaitement, merci encore.
 En revenche il suffit de visualiser le code pour voir le mot de passe mais bon, les utilisateurs n'ont pas une connaissance d'Excel aussi poussée ^^.


Message édité par Gruber Hans le 26-05-2006 à 01:05:58
n°1375318
galopin01
Posté le 26-05-2006 à 06:13:56  profilanswer
 

il est possible de protéger le code par un mot de passe...


---------------
roger
n°1375526
Gruber Han​s
Posté le 26-05-2006 à 13:54:42  profilanswer
 

Puis-je te demander comment tu fais ?

n°1375784
galopin01
Posté le 26-05-2006 à 22:18:02  profilanswer
 

Dans VBA :
Outils / Propriétés de VBA Project... Onglet Protection + Verrouiller...
A+


---------------
roger
mood
Publicité
Posté le 26-05-2006 à 22:18:02  profilanswer
 

n°2230324
baldo139
Posté le 10-06-2014 à 14:22:26  profilanswer
 

Bonjour à tous,
 
Je me permets de revenir à cette ancienne discussion qui est fort utile...
Au niveau du code VBA est-il possible de laisser les zones de tri (excel) active car avec le code tel quel, elles ne le sont plus.
 
Merci à vous d'avance.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  VB/VBA/VBS

  interdire la modification d'une feuille excel sauf avec userform

 

Sujets relatifs
Modification dynamique de pages par internautes ?Travailler sur des images en VBA sous Excel
[VBA Excel] Colorier les objets d'un graphiqueFiltre avec critere variable Excel
[VB] Copie feuille d'un classeur vers autre classeurImport Fichier Excel dans Sql Server
lancer un log a partir d'excel (macro)[RESOLU] Comment lancer excel en mode batch ?
Problème sur Macro ExcelExcel: TDC
Plus de sujets relatifs à : interdire la modification d'une feuille excel sauf avec userform


Copyright © 1997-2018 Hardware.fr SARL (Signaler un contenu illicite) / Groupe LDLC / Shop HFR