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 :

Tirage au sort avec une condition [XL-2016]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 34
    Par défaut Tirage au sort avec une condition
    Bonjour,

    Je souhaite lancer le tirage au sort d'un nom par rapport à une liste (Colonne A).
    Mais je veux écarter les personnes dont le statut est à 0 dans la colonne B (voir image ci-dessous).

    Nom : Capture1.PNG
Affichages : 227
Taille : 10,8 Ko

    Je pense à du code VBA mais je ne m'y connais pas assez,
    Merci beaucoup de bien vouloir m'aider,
    A bientôt

  2. #2
    Membre expérimenté
    Profil pro
    au repos
    Inscrit en
    Février 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : Saint-Pierre-Et-Miq.

    Informations professionnelles :
    Activité : au repos

    Informations forums :
    Inscription : Février 2013
    Messages : 161
    Par défaut
    Bonjour,
    tu peux essayer ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub TirageAuSort()
    Dim x As Integer
    Dim listeNoms As New Collection
    Randomize
    ActiveSheet.Range("A2").Select
    For x = 0 To 5
    'Si la cellule de la colonne B ne contient pas 0 on l'ajoute à la collection
    If ActiveCell.Offset(x, 1) > 0 Then
       listeNoms.Add (ActiveCell.Offset(x, 0).Text)
    End If
    Next
    Debug.Print listeNoms.Item(Int(listeNoms.Count * Rnd) + 1)
    End Sub
    Mais je pense que l'on peut s'en sortir avec une formule.

    Nullosse, le plus nul des programmeurs

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 34
    Par défaut
    Bonjour Nullosse,

    Peut-on afficher le résultat dans une cellule en colonne D ?

    Dans mon cas, je me demande si la solution à privilégier serai plutôt une macro, car j'aimerai ensuite relier le résultat à Power Automate par la suite.

  4. #4
    Membre expérimenté
    Profil pro
    au repos
    Inscrit en
    Février 2013
    Messages
    161
    Détails du profil
    Informations personnelles :
    Localisation : Saint-Pierre-Et-Miq.

    Informations professionnelles :
    Activité : au repos

    Informations forums :
    Inscription : Février 2013
    Messages : 161
    Par défaut
    Citation Envoyé par Conundrum Voir le message
    Bonjour Nullosse,

    Peut-on afficher le résultat dans une cellule en colonne D ?

    Dans mon cas, je me demande si la solution à privilégier serai plutôt une macro, car j'aimerai ensuite relier le résultat à Power Automate par la suite.
    Pour la première question :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Range("D4").Value = listeNoms.Item(Int(listeNoms.Count * Rnd) + 1)
    Pour la deuxième question, je ne sais pas

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    34
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 34
    Par défaut
    Merci beaucoup Nullosse !
    ça marche impeccablement

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

Discussions similaires

  1. [XL-2007] Tirage au sort avec conditions
    Par Pierre77 dans le forum Excel
    Réponses: 3
    Dernier message: 05/09/2014, 13h08
  2. [XL-2007] Tirages au sort avec une contrainte
    Par islande dans le forum Excel
    Réponses: 2
    Dernier message: 29/01/2014, 11h54
  3. Réponses: 3
    Dernier message: 24/10/2005, 14h47
  4. Problème de requête avec une condition IN
    Par sorcer1 dans le forum Langage SQL
    Réponses: 5
    Dernier message: 20/10/2005, 12h56
  5. envoyer submit avec une condition !
    Par delphinote dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 01/07/2005, 16h52

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