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

Macros et VBA Excel Discussion :

souci macro simple


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Homme Profil pro
    retraite
    Inscrit en
    Décembre 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : retraite

    Informations forums :
    Inscription : Décembre 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut souci macro simple
    bonjour et bonne annee a tous

    je voudrai " ENREGISTRER UNE MACRO " sur un userform ( image jointe en document )
    je commence a enregistrer ma macro :
    la fenetre userform se lance et je coche 30 m et j'arrete enregistrement.
    j'applique la macro a un bouton et je lance la macro en cliquant sur le bouton
    elle se lance et s'arrete sur la selection 30 mn qui n'est pas coche.

    est ce que on peut faire en sorte que la coche du bouton 30 minutes soit pris en compte dans l'enregistrement macro en sachant que ces boutons sont des boutons option.
    merci de votre collaboration
    Nom : userform-ConvertImage.jpg
Affichages : 142
Taille : 39,9 Ko

  2. #2
    Membre extrêmement actif
    Homme Profil pro
    aucune
    Inscrit en
    Avril 2016
    Messages
    7 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 83
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Avril 2016
    Messages : 7 563
    Points : 12 433
    Points
    12 433
    Par défaut
    Bonjour

    Je ne vois pas du tout ce que tu veux dire.
    L'enregistreur de macros enregistre (en les interprétant en code) tous les gestes faits dans Excel.
    Un userform n'est pas un objet Excel, mais un objet VBA et échappe donc à l'observation de l'enregistreur de macros !

    Pour faire ce que tu exposes, il te faut donc écrire toi-même en VBA les instructions VBA nécessaires.

    Tu peux, à ton choix :
    - soit les écrire dans l'évènement Activate du userform
    - soit les écrire (avant même de montrer le userform) dans l'évènement de ton choix du module de code de ta feuille de calcul, en invoquant le userform et l'objet traité :
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mon_userf.mon_contrôle.telle_propriété = telle_valeur
    le seul fait d'évoquer un userform en provoque le chargement en mémoire

  3. #3
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Pour connaître quel bouton d'option est choisi, tu peux utiliser la fonction Switch. Le second argument de la paire est la valeur retournée par la fonction donc, si le bouton d'option "OptionButton3" est choisi, la valeur 3 sera retournée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Private Sub CommandButton1_Click()
     
        MsgBox Switch(OptionButton1, 1, _
                      OptionButton2, 2, _
                      OptionButton3, 3, _
                      OptionButton4, 4, _
                      OptionButton5, 5) 'etc...
     
    End Sub

  4. #4
    Candidat au Club
    Homme Profil pro
    retraite
    Inscrit en
    Décembre 2017
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Savoie (Rhône Alpes)

    Informations professionnelles :
    Activité : retraite

    Informations forums :
    Inscription : Décembre 2017
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par Theze Voir le message
    Bonjour,

    Pour connaître quel bouton d'option est choisi, tu peux utiliser la fonction Switch. Le second argument de la paire est la valeur retournée par la fonction donc, si le bouton d'option "OptionButton3" est choisi, la valeur 3 sera retournée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    Private Sub CommandButton1_Click()
     
        MsgBox Switch(OptionButton1, 1, _
                      OptionButton2, 2, _
                      OptionButton3, 3, _
                      OptionButton4, 4, _
                      OptionButton5, 5) 'etc...
     
    End Sub

    en fait je demarre ma macro : et je regarde le pas a pas :

    Sub essai()
    '
    ' essai Macro
    '

    '
    Sheets("Feuil1").Select
    Application.Run "'tournoi howell 7 paires ok.xlsm'!Choix"
    Application.Run "'tournoi howell 7 paires ok.xlsm'!Realcount"
    Application.DisplayFullScreen = False
    Application.Run "'tournoi howell 7 paires ok.xlsm'!Realcount"
    Application.Run "'tournoi howell 7 paires ok.xlsm'!Realcount"
    Application.Run "'tournoi howell 7 paires ok.xlsm'!Realcount"
    End Sub

    la premiere ligne demarre "choix " ce qui m'ouvre l'userform ou il y a marque les temps ( 20 mn , 21 m, etc ..) ( voir image)
    la seconde ligne delenche realcount ( je sais pas ce que cela veut dire ) le decompte peut etre
    la troisieme ligne est quand je valide le chois de la duree je pense

    comment faire pour faire apparaitre le choix de 30 mn par exemple

    merci de votre aide

    si vous voulez le fichier dite le moi

  5. #5
    Expert éminent
    Homme Profil pro
    Inscrit en
    Août 2010
    Messages
    3 453
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 3 453
    Points : 6 871
    Points
    6 871
    Par défaut
    Bonjour,

    Pas sûr de comprendre ce que tu veux mais bon. Si tu veux que ça te retourne la valeur en minutes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
     
    Private Sub CommandButton1_Click()
     
        MsgBox Switch(OptionButton1, 20, _
                      OptionButton2, 21, _
                      OptionButton3, 22, _
                      OptionButton4, 23, _
                      OptionButton5, 24, _
                      OptionButton6, 25, _
                      OptionButton7, 26, _
                      OptionButton8, 27, _
                      OptionButton9, 28, _
                      OptionButton10, 30) & " minutes"
     
    End Sub

Discussions similaires

  1. Boucle d'une macro simple jusqu'a une valeur d'une cellule
    Par Chribusquets dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 27/02/2011, 19h31
  2. [XL-2003] macro simple pour déplacer des lignes dans un tableau
    Par akka01 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 09/08/2010, 16h24
  3. Soucis réseau simple
    Par etienneR dans le forum Développement
    Réponses: 12
    Dernier message: 14/04/2010, 16h14
  4. Mémoire Insuffisante pour une macro simple
    Par ted the Ors dans le forum Macros et VBA Excel
    Réponses: 17
    Dernier message: 08/09/2008, 12h02
  5. macro simple de copie cellule
    Par icecream33 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/07/2006, 12h06

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