[déplacé VB.NET -> VBA] Comment récupérer la valeur d'un bouton option

Signaler
Messages postés
4
Date d'inscription
mardi 28 juillet 2009
Statut
Membre
Dernière intervention
2 décembre 2009
-
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
-
Bonjour à tous,
je n'arrive pas à récupérer dans un programme VB la valeur d'un bouton d'option créé sur une feuille Excel, et j'avoue que n'est pas vraiment tout compris dans les messages du site.

En plus clair, j'ai créé un bouton dans une feuille Excel. J'ai donc un code qui se trouve dans la partie MicrosoftExcel Project / Feuil1 de mon VBA Project :

Public Sub OptionButton1_Click()
If OptionButton1 True Then valeur_Oui 1
End Sub

Public Sub OptionButton2_Click()
If OptionButton2 True Then valeur_Non 1
End Sub


Je voudrais récupérer ces valeurs dans un Sub qui se trouve dans le module :
Sub saisie_valeurs()
Cells(2, 3).Value = valeur_Oui
Cells(3, 3).Value = valeur_Non
End Sub

Mais rien ne sort.
A priori cela pourrait être un problème de communication entre les deux "environnements", et dans ce cas, la déclaration en "public" ne suffit-elle pas ?

Merci de vos conseils

4 réponses

Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
Il faut que tu déclares tes variables "valeur_Oui" et "valeur_Non" en Public dans ton module afin qu'elles puissent être vues depuis tout les objets du classeur :
Public valeur_Oui As Integer
Public valeur_Non As Integer


Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
D'où l'intérêt de rendre obligatoire la déclaration des variables (dans les options VBA).
Si tu opte pour cette option après coup, ajoute cette ligne en tête de toutes les pages de codes existantes :
Option Explicit

(Cette ligne apparaitra seule si tu crées une nouvelle page de code)
Ca t'oblige à déclarer toutes tes variables, mais au moins tu seras obligé de réfflechir à l'étendue de cette variable et à son type : Résoud 80% des erreeurs de programme
Messages postés
4
Date d'inscription
mardi 28 juillet 2009
Statut
Membre
Dernière intervention
2 décembre 2009

Merci bien Jack, c'est bien la solution.
A+
Messages postés
13280
Date d'inscription
lundi 13 décembre 2004
Statut
Modérateur
Dernière intervention
3 février 2018
47
[quote=règlement]11.
On pense à laisser un petit message lorsqu'un problème est résolu et à cliquer sur le bouton «réponse acceptée».

Ce bouton sert à valider la ou les réponses qui conviennent au problème indiqué. Il sert aussi de remerciement pour les membres qui ont apporté la/les bonnes réponses. Enfin une réponse validée est bien plus facile à retrouver lors de recherches sur le forum. N'oubliez pas qu'un forum ne sert pas qu'à poser sa question!/quote