Les mémos

Fermer Tables

Fermer Requêtes

Fermer Formulaires

Fermer Etats

Fermer Modules

Fermer Base

Fermer Automation

Fermer Administration

Fermer Registre

Fermer String

Fermer Email CDO

Fermer Outlook

Fermer Net

Fermer Dates - Heures

Fermer Fichiers

Fermer Références

Fermer Vrac

Je débute...

Fermer La normalisation

Fermer VBA

Attention
Aucun support
par émail !

Utilisez le forum pour les questions/réponses concernant MsAccess et les codes que vous trouverez sur ce site.
Visites

   visiteurs

   visiteurs en ligne

Formulaires - Switch Modal
Les formulaires possèdent une propriété qui leur permet de rester à l'avant-plan (modale).

Si l'on souhaite modifier cette propriété, il faut ouvrir le formulaire en mode création, se rendre dans la fenêtre des propriétés, modifier la propriété "Fenêtre modale" et pour finir, sauver le formulaire.

Lorsqu'il s'agit de faire cela pour une série de formulaires, cela devient rapidement fastidieux... sauf si l'on utilise la fonction FormModal( ) ci-dessous!

Utilisation:

Cette fonction sera appellée par un bouton sur un formulaire (on ne pourra bien sûr pas accéder à ce formulaire) ou dans la fenêtre d'exécution directe que l'on appelle par les touches Ctrl + G

Exemples d'appels à la fonction:

FormModal True , "F_"
ce qui placera tous les formulaires dont le nom commence pas "F_" en modal.

FormModal False , "F_Clients"
ce qui supprimera la propriété modale de tous les formulaires dont le nom commence par "F_Clients"


Code :
Function FormModal(boModal As Boolean, sPartName As String)
Dim obj As AccessObject, db As Object
Dim sForm As String, sFormList As String
Set db = Application.CurrentProject
'/ Boucler sur tous les formulaires
For Each obj In db.AllForms
sForm = obj.Name
If Left(sForm, Len(sPartName)) = sPartName Then
sFormList = sFormList & sForm & vbCrLf
DoCmd.OpenForm (sForm), acDesign, , , , acHidden
Forms(sForm).Modal = boModal
DoCmd.Close acForm, sForm, acSaveYes
End If
Next obj
MsgBox "Liste des objets traités:" & vbCrLf _
& vbCrLf & sFormList
'/ Libérer
Set db = Nothing
End Function

Date de création : 16/07/2010 : 03:23
Dernière modification : 16/07/2010 : 19:21
Catégorie : Formulaires
Page lue 4242 fois


Imprimer l'article Imprimer l'article

Recherche



Lettre d'information
Pour avoir des nouvelles de ce site, inscrivez-vous à notre Newsletter.
Captcha
Recopier le code :
Au sujet de l'auteur
L'auteur qui fréquente (fréquentait) le forum microsoft.public.fr.access a eu le plaisir d'être nommé MVP Office-Access de janvier 2003 à décembre 2011.

Qui sont les MVP ?

Divers ;-)
Nous contacter

Haut