IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VBA Access Discussion :

[VBA]filtrage des controles sur leur nom


Sujet :

VBA Access

  1. #1
    Invité
    Invité(e)
    Par défaut [VBA]filtrage des controles sur leur nom
    bonjour à tous,
    j'ai ce script dans un formulaire pour verrouiller certain controles selon l'heure de la journee :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub Form_Open(Cancel As Integer)
    Dim ctl As Control
    If Time > "12:00:00" And Forms!identite!Fonction <> "administrateur" Then
    For Each ctl In Me.Form
    If ctl.ControlType = acCheckBox Then
    ctl.Locked = True
    ctl.Enabled = False
    End If
    Next ctl
    End If
    End Sub
    cependant au lieu de travailler sur le type de controle, je voudrais travailler sur le NOM du controle. C'est à dire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ctl.name = "* Matin" then ....
    ici tous les controles dont le nom se termine par "Matin"

    ou bien
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ctl.name = "* Nuit" then
    ici tous les controles dont le nom se termine par "Nuit"

    mais cette syntaxe est incorrecte... quelqu'un saurait-il comment rediger cela ?
    merci d'avance (en esperant avoir été comprehensible)

  2. #2
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Bonjour,

    Tu pourrais peut-être utiliser la propriété Remarque (Tag) des contôles.

    Domi2

  3. #3
    Invité
    Invité(e)
    Par défaut
    bonjour Domi,
    tout d'abord,merci pour l'interet que tu portes à mon petit souci.
    Je ne connais pas du tout ce dont tu me parles... tu peux developper un peu ?

  4. #4
    Expert éminent sénior
    Avatar de Domi2
    Homme Profil pro
    Gestionnaire
    Inscrit en
    Juin 2006
    Messages
    7 194
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : Suisse

    Informations professionnelles :
    Activité : Gestionnaire
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 194
    Points : 16 044
    Points
    16 044
    Par défaut
    Re,

    Regarde les propriétés de tes contrôles (onglet Autres). Tout en bas, tu as Remarque.

    Tu renseignes la propriété avec "Matin" par ex. et après un petit code du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    Dim ctl As Control
    For Each ctl In Me.Controls
    If ctl.Tag = "Matin" Then
    ...ce que tu veux faire
    End If
    Next
    Domi2

  5. #5
    Membre émérite

    Profil pro
    Inscrit en
    Février 2005
    Messages
    1 751
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 1 751
    Points : 2 368
    Points
    2 368
    Par défaut
    Bonjour,

    Citation Envoyé par ORL45
    cependant au lieu de travailler sur le type de controle, je voudrais travailler sur le NOM du controle. C'est à dire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if ctl.name = "* Matin" then ....
    ici tous les controles dont le nom se termine par "Matin"
    Tu peux utiliser l'opérateur de comparaison Like qui compare une chaîne de caractères avec un modèle contenant des caractères génériques (*?#).

  6. #6
    Invité
    Invité(e)
    Par défaut
    merci à tous les 2 ,
    c'est la solution de Domi remporte sur ce coup là !
    de plus j'ai appris quelque chose d'interessant
    JBO , je ne manquerai pas de tester...

Discussions similaires

  1. Réponses: 0
    Dernier message: 16/09/2012, 16h06
  2. Tuer des processus par leur nom
    Par tedparker dans le forum Access
    Réponses: 2
    Dernier message: 12/09/2006, 16h19
  3. Réponses: 8
    Dernier message: 07/08/2006, 17h40
  4. Réponses: 5
    Dernier message: 12/07/2006, 11h21
  5. [C#2.0]Dupliquer des controles sur une autre form
    Par chnew dans le forum Windows Forms
    Réponses: 5
    Dernier message: 12/05/2006, 09h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo