Boutons d'option et Userform VBA

  • Initiateur de la discussion Initiateur de la discussion dvcom69
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

D

dvcom69

Guest
[RESOLU]Boutons d'option et Userform VBA[RESOLU]

Bonjour à tous,

J'ai cherché partout mais sans succès!!

J'ai un userform qui me permet d'alimenter une base de données.
La récupération des infos se fait grâce à des frames contenant des boutons d'option.

L'insertion dans la bdd se fait sans prob.

Dans mon fichier, lorsqu'une entrée a été insérée et que je souhaite modifier les infos, je rappelle mon USF.Ce que je n'arrive pas à faire c'est à ré-alimenter chaque frame en activant le bouton d'option selectionné auparavant.

Avez-vous une idée?😕
 
Dernière modification par un modérateur:
Re : Boutons d'option et Userform VBA

Salut Skoobi,

Je t'ai fais un petit exemple ci-joint. C'est un USF pour insérer le nom prénom et une note de 1 à 6 à choisir dans une frame nommée "que1" parmi les 6 boutons d'option.

Pour lancer le USF il faut cliquer sur la cellule A de la ligne correspondante.
Pour modifier une ligne, il faut cliquer sur la cellule A de la ligne à modifier. C'est à ce moment là que le USF récupere les infos déjà présentes (nom et prénom et normalement la note de 1 a 6 -- c'est la ou je bloque)

Merci d'avance,
 

Pièces jointes

Re : Boutons d'option et Userform VBA

Re,

Pour qu'un userform charge des données d'une feuille, il faut utiliser l'événement Initialize.
Ca donne ceci:

Code:
Private Sub UserForm_Initialize()
Dim ctr As Control

    Nom = ActiveCell.Offset(0, 1).Value
    Prenom = ActiveCell.Offset(0, 2).Value
    
    For Each ctr In que1.Controls
       If TypeName(ctr) = "OptionButton" Then
         If ActiveCell.Offset(0, 3).Value = Val(ctr.Caption) Then
             ctr.Value = True
         End If
       End If
    Next

End Sub

bon test.
 
Re : Boutons d'option et Userform VBA

Bonjour dvcom,
Skoobi😉

Une autre solution en renomant les bouton d'option de "opt1" à "opt6":

Code:
Private Sub UserForm_Initialize()
 Dim ValOption As Integer
 ValOption = Cells(ActiveCell.Row, 4).Value
 If ValOption > 0 And ValOption < 6 Then Me.Controls("opt" & ValOption) = True
End Sub

A+
 
Re : Boutons d'option et Userform VBA

Re tous,

Proposition pour le bouton de validation:

Code:
Private Sub CommandButton1_Click()
    Dim c As Range
    Set c = ActiveCell
    c(1, 2).Value = Nom
    c(1, 3).Value = Prenom
    c(1, 4) = Abs((Opt1 * 1) + (Opt2 * 2) + (Opt3 * 3) + (Opt4 * 4) + (Opt5 * 5) + (Opt6 * 6))
    
Unload Infos
End Sub

l'ami Skoobi à dit:
j'ai bêtement repris le sien, trop la flême ce soir
rien de bête là-dedans, et la flême, je connais bien, j'adore ça😀
A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Retour