pb pour spécifier chemin : "f:monfichier" marche, mais "monfichier" marche pas ?

4 réponses
Avatar
Jose SISA
bonjour :-) ,=20
j'ai trouv=E9 une m=E9thode pour jouer un mp3.
j'ai mis la m=E9thode ci dessous, =E7=E0 marche tr=E8s bien sauf
pour la sp=E9cification du fichier son.

si j'=E9cris :=20
sMusicFile =3D "f:\son.mp3": Play =3D mciSendString("play " & sMusicFile, 0=
&, 0, 0)

=E7=E0 marche tr=E8s bien, mais si je ne mets pas la lettre du lecteur ("f:=
\")
=E7=E0 ne marche plus.
mon soucis est que, je ne sais pas =E0 l'avance o=F9 sera mon fichier son.


merci
Jos=E9

la macro vba complete ci-dessous :=20
je l'ai trouv=E9 ici : http://www.tek-tips.com/viewthread.cfm?qid=3D1653748

Private Declare Function mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" (ByVal lpstrCommand As String, ByVal _
lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _
hwndCallback As Long) As Long

Dim sMusicFile As String

Dim Play

Private Sub cmdPlayMusic_Click()

sMusicFile =3D Me.txtFileName.Text 'path has been included. Ex. "C:\=
3rdMan.mp3"

Play =3D mciSendString("play " & sMusicFile, 0&, 0, 0)

If Play <> 0 Then MsgBox "Can't PLAY!"

Me.cmdPlayMusic.Enabled =3D False
Me.cmdStopMusic.Enabled =3D True

End Sub

Private Sub cmdStopMusic_Click()
=20
Play =3D mciSendString("close " & sMusicFile, 0&, 0, 0)

cmdPlayMusic.Enabled =3D True
cmdStopMusic.Enabled =3D False
=20
End Su

4 réponses

Avatar
DanielCo
mon soucis est que, je ne sais pas à l'avance où sera mon fichier son.



Bonjour,

Bonjour,

Il est sur une clé USB ou sur un disque externe ?

Cordialement.

Daniel
Avatar
DanielCo
Peut-être :

Sub test()
Dim FSO As Object, Lecteurs
Lecteurs = Array("D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
"O", "P", "Q", _
"R", "S", "T", "U", "V", "W", "X", "Y", "Z")
Set FSO = CreateObject("Scripting.FileSystemObject")
For Each Item In Lecteurs
If FSO.driveexists(Item) Then
If FSO.fileexists(Item & ":son.mp3") Then
sMusicFile = Item & ":son.mp3": Play = mciSendString("play
" & sMusicFile, 0&, 0, 0)
Exit For
End If
End If
Next Item
End Sub

Daniel


bonjour :-) ,
j'ai trouvé une méthode pour jouer un mp3.
j'ai mis la méthode ci dessous, çà marche très bien sauf
pour la spécification du fichier son.

si j'écris :
sMusicFile = "f:son.mp3": Play = mciSendString("play " & sMusicFile, 0&, 0,
0)

çà marche très bien, mais si je ne mets pas la lettre du lecteur ("f:")
çà ne marche plus.
mon soucis est que, je ne sais pas à l'avance où sera mon fichier son.


merci
José

la macro vba complete ci-dessous :
je l'ai trouvé ici : http://www.tek-tips.com/viewthread.cfm?qid53748

Private Declare Function mciSendString Lib "winmm.dll" Alias _
"mciSendStringA" (ByVal lpstrCommand As String, ByVal _
lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _
hwndCallback As Long) As Long

Dim sMusicFile As String

Dim Play

Private Sub cmdPlayMusic_Click()

sMusicFile = Me.txtFileName.Text 'path has been included. Ex.
"C:3rdMan.mp3"

Play = mciSendString("play " & sMusicFile, 0&, 0, 0)

If Play <> 0 Then MsgBox "Can't PLAY!"

Me.cmdPlayMusic.Enabled = False
Me.cmdStopMusic.Enabled = True

End Sub

Private Sub cmdStopMusic_Click()

Play = mciSendString("close " & sMusicFile, 0&, 0, 0)

cmdPlayMusic.Enabled = True
cmdStopMusic.Enabled = False

End Su
Avatar
Jose SISA
Bonjour Daniel,
le plus simple pour moi est de poser le fichier son au même endroit
où se trouve le fichier xls.
dans ce cas, comment retrouver l'emplacement du fichier
xls, puis reconstituer le chemain complet vers le fichier son.pm3 ?

as tu un tout de code pour trouver l'emplacement du fichier excel ?

Merci pour ton aide.
José


Le lundi 28 janvier 2013 10:38:01 UTC+1, DanielCo a écrit :
Peut-ᅵtre :



Sub test()

Dim FSO As Object, Lecteurs

Lecteurs = Array("D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",

"O", "P", "Q", _

"R", "S", "T", "U", "V", "W", "X", "Y", "Z")

Set FSO = CreateObject("Scripting.FileSystemObject")

For Each Item In Lecteurs

If FSO.driveexists(Item) Then

If FSO.fileexists(Item & ":son.mp3") Then

sMusicFile = Item & ":son.mp3": Play = mciSendString("pl ay

" & sMusicFile, 0&, 0, 0)

Exit For

End If

End If

Next Item

End Sub



Daniel





> bonjour :-) ,

> j'ai trouvᅵ une mᅵthode pour jouer un mp3.

> j'ai mis la mᅵthode ci dessous, ᅵᅵ marche trï ¿œs bien sauf

> pour la spᅵcification du fichier son.

>

> si j'ᅵcris :

> sMusicFile = "f:son.mp3": Play = mciSendString("play " & sMusicFil e, 0&, 0,

> 0)

>

> ᅵᅵ marche trᅵs bien, mais si je ne mets pas la lettre du lecteur ("f:")

> ᅵᅵ ne marche plus.

> mon soucis est que, je ne sais pas ᅵ l'avance oᅵ sera m on fichier son.

>

>

> merci

> Josᅵ

>

> la macro vba complete ci-dessous :

> je l'ai trouvᅵ ici : http://www.tek-tips.com/viewthread.cfm?qid 53748

>

> Private Declare Function mciSendString Lib "winmm.dll" Alias _

> "mciSendStringA" (ByVal lpstrCommand As String, ByVal _

> lpstrReturnString As Any, ByVal uReturnLength As Long, ByVal _

> hwndCallback As Long) As Long

>

> Dim sMusicFile As String

>

> Dim Play

>

> Private Sub cmdPlayMusic_Click()

>

> sMusicFile = Me.txtFileName.Text 'path has been included. Ex.

> "C:3rdMan.mp3"

>

> Play = mciSendString("play " & sMusicFile, 0&, 0, 0)

>

> If Play <> 0 Then MsgBox "Can't PLAY!"

>

> Me.cmdPlayMusic.Enabled = False

> Me.cmdStopMusic.Enabled = True

>

> End Sub

>

> Private Sub cmdStopMusic_Click()

>

> Play = mciSendString("close " & sMusicFile, 0&, 0, 0)

>

> cmdPlayMusic.Enabled = True

> cmdStopMusic.Enabled = False

>

> End Su
Avatar
MichD
Bonjour,

| le plus simple pour moi est de poser le fichier son au même endroit
| où se trouve le fichier xls.

Pour extraire le chemin et le répertoire dans lequel le fichier ouvert
est enregistré :

Msgbox Thisworkbook.Path & ""

OU

Msgbox Workbooks("NomDuClasseur.xls").Path & ""

Au chemin, il ne reste plus qu'à ajouter le nom de ton fichier .mp3.


MichD
--------------------------------------------------------------