Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Bloquer tous les éléments d'une feuille [ Divers / General ] (freepopo)

vendredi 25 juillet 2008 à 11:46:53 | Bloquer tous les éléments d'une feuille

freepopo

Bonjour à vous,

Je programme en VB6.
Je voudrais savoir s'il est possible de bloquer tout un formulaire pour ne pas que l'utilisateur change des données par inadvertance.
Un bouton "Modifier" permetterait de débloquer ce formulaire pour changer des éléments.

Y a t'il un moyen de tout vérrouiller directement ? Par exemple dans tout mettre dans une frame et bloquer/débloquer les éléments de cette frame ?

Merci d'avance

Enfin quelqu'un qui n'a pas de signature.

vendredi 25 juillet 2008 à 11:59:14 | Re : Bloquer tous les éléments d'une feuille

gillardg

la réponse est oui si c'est du vb et je sais pas si c'est du vba
 de quel genre de formulaire parles tu ??

Il n'y a que les gens qui ne font rien, qui ne font pas d'erreur

/B>

vendredi 25 juillet 2008 à 13:58:47 | Re : Bloquer tous les éléments d'une feuille

freepopo

Bonjour,

C'est bien du VB6, pas du VBA. Ce sont en fait des feuilles ou sont affichées des données récupérées à partir d'une base de données Access toute bête.

Enfin quelqu'un qui n'a pas de signature.

vendredi 25 juillet 2008 à 14:09:02 | Re : Bloquer tous les éléments d'une feuille

gillardg

dans quels types de controles affiche tu les données??

Il n'y a que les gens qui ne font rien, qui ne font pas d'erreur

/B>

vendredi 25 juillet 2008 à 18:43:42 | Re : Bloquer tous les éléments d'une feuille

titicar

Salut,

Il y a 2 solutions simples :

La première :
Tous tes contrôles sont placés dans une frame... à l'exception de ton bouton 'modifier'.
Dans ce cas là, y a pas plus simple : désactive simplement ta frame (myFrame.Enabled = True).
Ainsi tous les contrôles contenus dans cette frame seront désactivés. Mais d'un point de vue visuel, tu ne le remarqueras pas car les contrôles dans cette frame ne seront pas grisés.

Deuxième solution :
Tous tes contrôles ne sont pas dans une frame.
Utiliser une boucle For Each myObject In myForm : Très pratique, la boucle désactivera TOUS les différents contrôles du form.
Faudra juste penser à réactiver ton bouton 'Modifier' à la fin de la procédure, et activer à nouveau les contrôles (ou objets) quand on appuie sur ce bouton.

Exemple :

Private Sub Form_Load()
    '# Par défaut, on désactive les controles de ce form:
    '# Dans l'exemple, le bouton 'modifier' s'apelle CmdModify

    myObjects_Enable False, Me, Me.CmdModify
End Sub

Private Sub CmdModify_Click()
    myObjects_Enable True, Me, CmdModify
End Sub

Private Sub myObjects_Enable(ByVal Bool As Boolean, myForm As Form, myButtonModified_Name As CommandButton)
'# Permet d'activer ou de désactiver tous les objets du form, sauf le bouton myButtonModified_Name
'# Bool active ou non les différents objets
'# myForm représente le form contenant les objets
'# myButtonModified_Name représente le bouton qui doit rester activé !

Dim myObject As Object

    On Local Error Resume Next 'Au cas où...
   
    '# Désactive TOUS les objets du form 'myForm':
    For Each myObject In myForm
        myObject.Enabled = Bool
    Next
   
    '# Réactive le bouton 'Modifier':
    myButtonModified_Name.Enabled = True
   
    On Local Error GoTo 0
End Sub

titicar

vendredi 25 juillet 2008 à 18:47:49 | Re : Bloquer tous les éléments d'une feuille

titicar

Réponse acceptée !
Oups, ça m'apprendra à me relire trop vite :
Dans le premier exemple, myFrame.Enabled = False (au lieu de True)... oui, c'est évident !

titicar

lundi 28 juillet 2008 à 13:51:01 | Re : Bloquer tous les éléments d'une feuille

freepopo

Thanks, je vais tester ça

Enfin quelqu'un qui n'a pas de signature.

lundi 28 juillet 2008 à 14:01:45 | Re : Bloquer tous les éléments d'une feuille

gillardg

freepopo , "Enfin quelqu'un qui n'a pas de signature." n'est ce pas une signature??

Il y a (4.5 \ 1.5) sortes de gens, ceux qui comprennent le vb et les autres ,je fais partie des autres/FONT>


lundi 28 juillet 2008 à 15:49:06 | Re : Bloquer tous les éléments d'une feuille

freepopo

Si, c'est justement ironique ;)

Sinon la méthode décrite juste au dessus ne fonctionne pas. Tous les éléments du form sont bien désactivés mais sa m'affiche un message d'erreur de code 438. Je pense qu'il y a un objet dans le form qui ne peut pas être mis a enabled comme sa, qu'en pensez-vous ? Voici le code :

Dim myObject As Object

    '# Désactive TOUS les objets du form 'myForm':
    For Each myObject In nouvProfil2
        myObject.Enabled = True
    Next

Enfin quelqu'un qui n'a pas de signature.

lundi 28 juillet 2008 à 16:07:46 | Re : Bloquer tous les éléments d'une feuille

gillardg

Réponse acceptée !

Dim s As Control

For Each s In Me .Controls

s.Enabled =

False  'ou true ça dépends de ou tu mets ce code

Next

Il y a (4.5 \ 1.5) sortes de gens, ceux qui comprennent le vb et les autres ,je fais partie des autres/FONT>



1 2

Cette discussion est classé dans : bloquer, formulaire, feuille, éléments, débloquer


Répondre à ce message

Sujets en rapport avec ce message

Feuille mdi child [ par seb ] Bonjour,voila j'ai un petit soucis.J'ai un programme avec une feuille mdi et les autres formulaire on une propriété mdi child a true.Je souhaiterai ce Sauvegarder une feuille Excel [ par Imer ] Question de neuneu (c'est mon niveau en VB).J'ai fait un formulaire en Active X par VB6 pour que de personnes répondent à un questionnaire.J'arrive à Bloquer l'exécution du code tant qu'un formulaire est ouvert [ par euskadi ] Slt,Voila mon probleme : Lors de l'éxécution d'un formulaire, je fais appel a un second formulaire. Me.Enabled = False FenetreBallon.Show Formulaire excel [ par madragord ] Bonjour,Je veux créer un formulaire dans lequel je veux que les données se rangent dans un endroit précis.Je m'explique : la feuille 1 c'est le formul Comment transferer une feuille excel en désordre vers un formulaire [ par guyver ] J'aimerais transferer un fichier xls en désordre et prendre les données utiles et les mettre soit dans un formulaire excel ou access. Aider moi s'il v Utiliser une feuille excel sur un formulaire [ par solar01 ] Quelqu'un sait comment est ce qu'il est possible d'utiliser une feuille excel dans un formulaire vb ??En fait, je dis une feuille excel mais un simple liste déroulante [ par tari ] helloje travaille sur un formulaire sous access 2000 avec un peu de vbag inséré une liste déroulante sur une feuille n°1je lance le formulaire la list listbox [ par GNECPA ] Je cherche à créer un filtre sur une feuille excel.La feuille est constituée de plusieurs lignes et colonnes.Chaque colonne correspond à un type d'inf Bloquer les cookies [ par Sp00ky ] Bonsoir,Je voudrais pouvoir bloquer complètement les cookies par appui sur un bouton de mon formulaire.Mon formulaire contient un WebBrowser, qui en c Ajouter des champs à un formulaire [ par skavenger ] J'ai besoin de créer un formulair de taille variable. Je m'explique : Ce formulaire permettra de saisir plusieurs éléments de même nature. chaque élé


Nos sponsors

Sondage...

CalendriCode

Téléchargements

Logiciels à télécharger sur le même thème :



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,437 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.