...le retour puisque certaines discussions du 11/12 ont disparu
Je reprends donc ce que j'avais énoncé et reçu:
Bonjour et merci à ceux qui s'intéresseront à ma demande,
Pour les fêtes de fin d'année je souhaitais faire un petit programme sur le principe suivant:
1/ un répertoire avec des musiques/chansons en MP3 ou WMA...
2/ un programme sous excel qui lancerait d'une façon aléatoire les musiques de ce répertoire (en évitant de répéter celles déjà lancées) quand on appuie sur un bouton.
3/ un bouton qui permet d'afficher la solution du genre: titre/interprète/...
pour le répertoire 1 je sais faire
pour lancer une musique je sais presque faire: j'ai récupérer sur le forum des idées du genre;
Sub PlayOn()
Song = "D:\TEST.mp3"
Call PlaySong(True)
End Sub
mais avec ça je lance toujours la même musique...
ma question est donc la suivante:
comment lancer d'une façon aléatoire une chanson/musique d'un répertoire donné?
pour le point 3 si vous avez des suggestions je reste ouvert à toutes propositions honnêtes et respectables
amicalement,************
Titre : Re : Jeux de chansons
Envoyé par : job75
Le : 11/12/2009 à 18h00
Bonsoir Belsebou,
Perso je créerais un tableau constitué de la manière suivante :
- colonne A => le nom du fichier son
- colonne B => vide au départ, elle est destinée à recevoir un "X" pour chaque fichier son exécuté
- colonne C => titres
- colonne D => interprètes, etc...
Puis je ferais une macro qui :
- tirerait au sort une ligne du tableau (plusieurs exemples sur ce forum), en refaisant un tirage si la colonne B contient "X"
- afficherait une MsgBox [*Edit* : ou un UserForm] pour indiquer le titre etc...
- exécuterait le fichier son
- cocherait la colonne B
- puis répèterait tout ça jusqu'à ce que tous les fichiers soient cochés.
A+************
Titre : Re : Jeux de chansons
Envoyé par : kllmoon
Le : 11/12/2009 à 19h09
Salut Belzebou, comme tu es nouveau, voici pour t'aider à débuter :
Code :
---------
Dim variable As Integer 'ceci est ton numéro au hazard
Dim variable2 As String 'ceci sera le nom de ta chanson en collonne A
Dim x As Integer ' x et y servent à vérifier si toutes les chansons ont été jouées
Dim y As Integer
x = [COUNTA(A1:A6000)]
y = [COUNTA(B1:B6000)]
If x = y Then Columns("B:B").ClearContents
' si les chansons ont toutes été jouées alors on repart le compte à zéro, s'il y a autant de x que de noms de chanson
1: variable = Int((10 - 1 + 1) * Rnd + 1)
' c'est ici que l'on pige au hazard
If Range("B" & variable).Value = "x" Then GoTo 1
' si le hazard tombe sur un x on recommence
variable2 = Range("A" & variable).Value
Range("B" & variable).Value = "x"
' insère ici le code pour jouer ta chanson avec le format Song = "D:\" & variable2 & ".mp3"
---------
ajout modif : si tu mets ta colonne B avec la police en blanc alors ça ne paraît même pas et c'est plus propre ************
Titre : Re : Jeux de chansons
Envoyé par : job75
Le : 11/12/2009 à 19h23
Salut kllmoon,
Juste un lapsus je pense au lieu de :
variable = Int((10 - 1 + 1) * Rnd + 1)
il faut utiliser :
variable = Int(x * Rnd + 1)
A+
Je remercie donc job75 et kllmoon pour leurs premières contributions même s'ils ne répondent pas tout à fait à mon problème:
comment lancer d'une façon aléatoire une chanson/musique d'un répertoire donné?
Je reprends donc ce que j'avais énoncé et reçu:
Bonjour et merci à ceux qui s'intéresseront à ma demande,
Pour les fêtes de fin d'année je souhaitais faire un petit programme sur le principe suivant:
1/ un répertoire avec des musiques/chansons en MP3 ou WMA...
2/ un programme sous excel qui lancerait d'une façon aléatoire les musiques de ce répertoire (en évitant de répéter celles déjà lancées) quand on appuie sur un bouton.
3/ un bouton qui permet d'afficher la solution du genre: titre/interprète/...
pour le répertoire 1 je sais faire
pour lancer une musique je sais presque faire: j'ai récupérer sur le forum des idées du genre;
Sub PlayOn()
Song = "D:\TEST.mp3"
Call PlaySong(True)
End Sub
mais avec ça je lance toujours la même musique...
ma question est donc la suivante:
comment lancer d'une façon aléatoire une chanson/musique d'un répertoire donné?
pour le point 3 si vous avez des suggestions je reste ouvert à toutes propositions honnêtes et respectables
amicalement,************
Titre : Re : Jeux de chansons
Envoyé par : job75
Le : 11/12/2009 à 18h00
Bonsoir Belsebou,
Perso je créerais un tableau constitué de la manière suivante :
- colonne A => le nom du fichier son
- colonne B => vide au départ, elle est destinée à recevoir un "X" pour chaque fichier son exécuté
- colonne C => titres
- colonne D => interprètes, etc...
Puis je ferais une macro qui :
- tirerait au sort une ligne du tableau (plusieurs exemples sur ce forum), en refaisant un tirage si la colonne B contient "X"
- afficherait une MsgBox [*Edit* : ou un UserForm] pour indiquer le titre etc...
- exécuterait le fichier son
- cocherait la colonne B
- puis répèterait tout ça jusqu'à ce que tous les fichiers soient cochés.
A+************
Titre : Re : Jeux de chansons
Envoyé par : kllmoon
Le : 11/12/2009 à 19h09
Salut Belzebou, comme tu es nouveau, voici pour t'aider à débuter :
Code :
---------
Dim variable As Integer 'ceci est ton numéro au hazard
Dim variable2 As String 'ceci sera le nom de ta chanson en collonne A
Dim x As Integer ' x et y servent à vérifier si toutes les chansons ont été jouées
Dim y As Integer
x = [COUNTA(A1:A6000)]
y = [COUNTA(B1:B6000)]
If x = y Then Columns("B:B").ClearContents
' si les chansons ont toutes été jouées alors on repart le compte à zéro, s'il y a autant de x que de noms de chanson
1: variable = Int((10 - 1 + 1) * Rnd + 1)
' c'est ici que l'on pige au hazard
If Range("B" & variable).Value = "x" Then GoTo 1
' si le hazard tombe sur un x on recommence
variable2 = Range("A" & variable).Value
Range("B" & variable).Value = "x"
' insère ici le code pour jouer ta chanson avec le format Song = "D:\" & variable2 & ".mp3"
---------
ajout modif : si tu mets ta colonne B avec la police en blanc alors ça ne paraît même pas et c'est plus propre ************
Titre : Re : Jeux de chansons
Envoyé par : job75
Le : 11/12/2009 à 19h23
Salut kllmoon,
Juste un lapsus je pense au lieu de :
variable = Int((10 - 1 + 1) * Rnd + 1)
il faut utiliser :
variable = Int(x * Rnd + 1)
A+
Je remercie donc job75 et kllmoon pour leurs premières contributions même s'ils ne répondent pas tout à fait à mon problème:
comment lancer d'une façon aléatoire une chanson/musique d'un répertoire donné?