Reproducir sonido incrustado en libro.

16/05/2007 - 10:24 por ~ jose ~ | Informe spam
Hola, que tal?.

Tengo un código de Ivan F. Moala para reproducir un archivo wav desde
Excel pero este código reproduce el archivo que está en el disco duro.
Tiene tres macros, una es el play otra es loop reproduce repetidamente
y otra es el stop. Como puedo hacer lo mismo pero sin hacer referencia
a un archivo externo?, me refiero a incrustar el sonido.wav en el
libro Excel.

El código de Moala:

Private Declare Function sndPlaySound Lib "winmm.dll" _
Alias "sndPlaySoundA" ( _
ByVal lpszSoundName As String, _
ByVal uFlags As Long) As Long

Private Const SND_ASYNC = &H1
Private Const SND_NODEFAULT = &H2
Private Const SND_LOOP = &H8
Private Const strSaveAs As String = "C:\Pruebas\sonido.wav"

Sub PlayBack()
WAVPlay strSaveAs
End Sub

Sub PlayBackLoop()
WAVLoop strSaveAs
End Sub

Sub PlayBackStop()
Call WAVPlay(vbNullString)
End Sub


Sub WAVLoop(File As String)
Dim SoundName As String
Dim wFlags As Long
Dim x As Long

SoundName = File
wFlags = SND_ASYNC Or SND_LOOP
x = sndPlaySound(SoundName, wFlags)
If x = 0 Then MsgBox "Can't play " & File

End Sub

Sub WAVPlay(File As String)
Dim SoundName As String
Dim wFlags As Long
Dim x As Long

SoundName = File
wFlags = SND_ASYNC Or SND_NODEFAULT
x = sndPlaySound(SoundName, wFlags)
If x = 0 Then MsgBox "Can't play " & File

End Sub

Gracias y un saludo

Preguntas similare

Leer las respuestas

#6 ~ jose ~
19/05/2007 - 12:36 | Informe spam
Muy buenas!

[lo que conlleva ademas riesgos de corrupcion del archivo] <= OJO


no sabia que esto "podria" tener consecuencias, por si las moscas, voy
ha hcer lo que me propenes, hacer referencia a un archivo de sonido
externo. Lo que he pensado es uqe en vez de proveer el xls con el
sonido, que este, se descargue automáticamente de mi espacio web y si
el usuario no dispone de conexión en ese momento, que suene un archivo
del propio windows.

Gracias y un saludo,
jose


hola, jose !

> ... lo que me proponias tu y David ya lo conocia
> pero dado que comentas que crees que no se puede hacer lo que pido
> me podrias decir como exportar un archivo de sonido incrustado en el libro?
> asi de esta forma al abrir el llibro se exportaria el archivo de sonido
> y al cerrarlo podria eliminarlo. Que te parece la idea?

1) no he logrado encontrar alguna funcionalidad que permita 'desempaquetar' un objeto incrustado en hojas de calculo :-(
2) [tal parece que] una vez incrustado, solo te queda... o aprovecharlo o... eliminarlo :-(
3) [por cierto] un detalle que -solo- pense en comentar en la propuesta anterior [omitido por olvido]...
es que al incrustar archivos de sonido en tus hojas, el 'peso' del archivo crece 'desproporcionadamente'
[lo que conlleva ademas riesgos de corrupcion del archivo] <= OJO

[prgunta]: no crees que seria mas 'sano' proveer el archivo de sonido en conjunto con tu archivo de excel ?
-> solo tendrias que 'cargarlo' [p.e.] desde el mismo ThisWorkbook.Path ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida