XL 2013 Fonction ET ou OU imbriquée dans Select Case

Lone-wolf

XLDnaute Barbatruc
Bonjour le Forum, :)

Dans les formules on peu imbriquer plusieurs conditions avec Et ou Ou. Comment appliquer ET avec Select Case? J'ai écrit ceci:
Case Is > Val(PointsJoueur.Value), Is <= 21, met la macro n'en tiens pas compte.
 

Dranreb

XLDnaute Barbatruc
C'est simple pour avoir un nouveau paquet avec toutes les cartes mélangées LAt.Init 52.
Chaque fois qu'on veut une carte du paquet, que ce soit pour le joueur ou pour l'ordi, on peut faire With CarteTirée et derrière utiliser .Nom, .Valeur et .Couleur pour en faire ce qu'on veut. Cette carte ne sera plus proposée par la suite jusqu'à nouvelle réinitialisation indiquée plus haut.
 

Dranreb

XLDnaute Barbatruc
Je n'ai pas dit de laisser tomber, juste de le reprendre à 0, surtout pour ce qui est du tirage des cartes.
Là ça ne va pas. Il faut utiliser le même objet ListeAléat pour les deux modules si vous tenez à tout prix à ce qu'il y en ai plusieurs. Peut être alors mettre les procédure de tirage dans un 3ième. Avec une procédure pour initialiser le paquet.
Ou alors tout faire carrément dans l'UserForm et se passer de la feuille et des modules (sauf le module de classe ListeAléat). Ce serait bien plus fluide si tout était dans des tableaux dynamiques plutôt que dans des cellules !
 
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Bonjour Bernard,

je viens de faire plusieurs tests. N'y ListAleat, n'y mes macros ne causent problèmes, c'est la fonction. Et dans la fonction, il y a Choose. C'est elle qui distribue les cartes; et cette fonction (Choisir), peux choisir 2 mêmes cartes.

VB:
Public Function Rand_Cartes(ByVal N As Long) As String
    Rand_Cartes = Choose((N - 1) Mod 13 + 1, "as", "deux", "trois", "quatre", "cinq", _
                         "six", "sept", "huit", "neuf", "dix", "valet", "dame", "roi") & " de " & _
                         Choose((N - 1) \ 13 + 1, "coeur", "carreau", "piques", "trèfle")
End Function

Il y a-t-il moyen dans la fonction, dans le cas où elle choisi 2 même cartes, elle prend la carte suivante?
Ex.: si elle choisi deux dix de trèfle, l'un des dix doit être sois un valet ou une autre carte.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Non, ce n'est pas ça..
Je vais me désabonner de cette discussion, ça ne m'intéresse plus.
Vous n'avez aucune base de programmaton. On ne pourra jamais s'entendre tant que vous les aurez pas acquises.
Ma fonction CarteTirée du poste #8 ne proposait jamais deux fois la même carte à partir du moment où LAt était initialisé (par LAt.Init 52). Elle renvoyait une structure Carte avec Carte.Nom: la désignation de la carte, Carte.Valeur: sa valeur et Carte.Couleur: sa couleur.
Mais vous refuser ou vous êtes incapable de refaire une programmation qui utilise partout ça, et uniquement ça. Tant pis.
 
Dernière édition:

Lone-wolf

XLDnaute Barbatruc
Re Bernard,

Désolé mais, t'es sévère là.

J'ai bien dis que j'était loin d'être un farouche programmeur non? Et j'ai bien vu cette fontion. Mais ensuite tu met ceci:

Sub TirerUneCarte()
Dim Carte As Carte, …
Carte = CarteTirée


Comment veux-tu que je m'en sorte??. Si moi je te met un ciseaux et un peigne dans les mains et je te demande de couper les cheveux du client (toi qui débute dans la coiffure, par exemple), serais-tu capable de couper les cheveux? Non. Et c'est pareil pour moi Bernard.

Si moi je serais plus ou moins à ton niveau et je serait incapable de me démerder, alors là tu aurais toutes les saintes raisons de réagir ainsi.

EDIT: J'oubliais. En attendant t'as réponse, j'ai mis la même fonction du post 21 + la même macro Randomize pour les deux, comme tu m'as conseillé et fait du ménage avec des variables inutiles.
 
Dernière édition:

Discussions similaires

Statistiques des forums

Discussions
312 520
Messages
2 089 293
Membres
104 091
dernier inscrit
Abdou4242