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]Conseil sur code VBA


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut [VBA]Conseil sur code VBA
    Bonjour à tous

    j'aurais besoin de vos judicieux conseils sur une partie de mon code VBA

    J'ai un groupe d'options qui me permet de sélectionner un etage (de 1 à 7) puis un deuxième groupe d'options qui me permet de selectionner une zone (de 1 à 3), le reste n'est que détails

    En fait, je veux, lorsque je selectionne l'etage 7, que les zones 2 et 3 restent grisées car il ne peut y avoir ces zones à cet etage. J'ai donc appliqué un code VBA sur le bouton de bascule concernant le 7e etage, cela marche sauf que, dès que j'ai selectionner le 7e etage, le code s'applique aux autres etages aussi, ce que je ne veux pas, et je ne vois pas l'erreur. Je met le code VBA ci-dessous. Si quelqu'un peut me dire où j'ai oublié quelque chose, je vous en serai reconnaissant !!

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub GpeZone_AfterUpdate()
    'Lors de la selection de la zone, la zone de texte "Numéro de prise" s'active
    Me.NumPrise.Enabled = True
    'La variable Zone prend la valeur selectionnée
    Zone = Me.GpeZone.Value
    End Sub
     
    Private Sub Bascule9_GotFocus()
    Me.Bascule14.Enabled = False 'Bouton de la Zone2
    Me.Bascule15.Enabled = False 'Bouton de la Zone3
    End Sub
    Merci

  2. #2
    Membre éclairé Avatar de Gary_Stoupy
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    244
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 244
    Par défaut
    Bonjour,

    Essaie de faire un test de l'option sélectionnée après update de ta zone... Si l'option sélectionnée correspond à l'étage 7, alors tu désactives, sinon tu ne fais rien...

    Un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    if (Me.GpeZone.Value = 7) then
        Me.Bascule14.Enabled = False 'Bouton de la Zone2
        Me.Bascule15.Enabled = False 'Bouton de la Zone3
    else
        Me.Bascule14.Enabled = true 'Bouton de la Zone2
        Me.Bascule15.Enabled = true 'Bouton de la Zone3
    end if

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut
    Merci Gary_Stoupy

    ta solution est une bonne idée mais ne fonctionne pas car ma valeur de ma Gpe Zone n'est pas du texte (= 7 dans ton code).

    J'ai essayé différente combinaisons comme :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If Me.GpeZone.Value = Me.Bascule9.Caption Then
    Me.Bascule14.Enabled = False
    Me.Bascule15.Enabled = False
    Else
    Me.Bascule14.Enabled = True
    Me.Bascule15.Enabled = True
    End If
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If Me.Bascule9.Enabled = True Then
    Me.Bascule14.Enabled = False
    Me.Bascule15.Enabled = False
    Else
    Me.Bascule14.Enabled = True
    Me.Bascule15.Enabled = True
    End If
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    If Me.Bascule9.Caption Then
    Me.Bascule14.Enabled = False
    Me.Bascule15.Enabled = False
    Else
    Me.Bascule14.Enabled = True
    Me.Bascule15.Enabled = True
    End If
    mais rien n'y fait. Peut etre que mon code est totalement utopique mais je suis pas un pro VB donc je teste

    bref, je continu à chercher, n'hesitez pas si vous avez des suggestions et merci en tous cas

  4. #4
    Expert confirmé

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Par défaut
    Ca dit quoi ça ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Me.Bascule14.Enabled = (Me.GpeZone.Value = Me.Bascule9.value)
    Me.Bascule15.Enabled = Me.Bascule14.Enabled

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut
    Merci Maxence pour ta suggestion, je vais tester ca de suite

    sinon j'ai fait ce test :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Private Sub Bascule9_GotFocus() => Bascule9 est mon bouton Etage7
    Me.Bascule14.Enabled = False
    Me.Bascule15.Enabled = False
    End Sub
    donc là ca marche nikel sauf qu'à partir du moment où on a selectionné l'etage 7 et qu'on veut ensuite changer d'etage, les zones 2 et 3 restent grisées... mais on s'approche lol

    bon je vais tester ta soluce Maxence et je reviens te dire ce qu'il en est !!
    merci en tous cas vous etes les

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 84
    Par défaut
    Maxence

    J'ai une erreur 2427 Expression sans paramètre qui ressort

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Déprotéger le code VBA avec un code VBA
    Par Gado2600 dans le forum Sécurité
    Réponses: 3
    Dernier message: 24/04/2014, 08h57
  2. [XL-2007] Balayage par le code VBA d'un code VBA
    Par cotmar dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 20/05/2011, 09h14
  3. Supression de code VBA par du code VBA
    Par cotmar dans le forum Général VBA
    Réponses: 3
    Dernier message: 14/02/2011, 14h33
  4. [XL-2007] Insertion de code VBA dans du code VBA
    Par cotmar dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 11/02/2011, 11h35
  5. mot de passe sur code VBA
    Par Cupidon dans le forum VBA Access
    Réponses: 4
    Dernier message: 07/02/2007, 15h05

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