AYUDA URGENTE, PLS

02/08/2005 - 20:01 por Lyna | Informe spam
Estimados todos,

Tengo el siguiente código en ThisWorkbook

Private Sub Workbook_Open()
Dim Fila As Byte
Dim Dias As Variant

Dias = Array("DOM", "LUN", "MAR", "MIE", "JUE", "VIE", "SAB")

NomDias = Dias(Weekday(Date, vbMonday))

With Worksheets(NomDias)
.ScrollArea = "A1:D100"
.Columns("E:IV").Hidden = True
.Rows("101:65536").Hidden = True
End With

With Worksheets(NomDias)
For Fila = 2 To 31
Application.OnTime .Range("a" & Fila), "'WAVs_programados""" & Fila
& """" & NomDias & " '"
Next
End With
End Sub

y también tengo un MODULO

Option Explicit

Public Declare Function TocarMusicaWAV Lib "winmm.dll" Alias "sndPlaySoundA"
(ByVal Archivo As String, ByVal Estado As Long) As Long

Sub TocarMusica()
Dim EsteArchivo As String

'TocarMusicaWAV EsteArchivo, 0
'MsgBox "La macro estuvo detenida ""mientras""la música ""tocaba""."
TocarMusicaWAV EsteArchivo, 1
MsgBox "La música está tocando, y la macro ... ""ejecutando"
End Sub

Sub WAVs_programados(ByVal Fila As Byte, NomDias As String)
Dim EsteArchivo As String
EsteArchivo = Worksheets(NomDias).Range("b" & Fila)
TocarMusicaWAV EsteArchivo, 1
MsgBox "La música está tocando, y la macro ... ""ejecutando"
End Sub

Me marca error, pero ya he intentado corregirlo, y creo que mi error está
en los parámteros, pero no le hallo, les agredecería mil si me pueden ayudar.

Si se activa el procedimiento a la hora que indico pero marca error, en los
parámetros.

Saludos,
Lyna

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
03/08/2005 - 00:46 | Informe spam
hola, Lyna !

... el siguiente codigo en ThisWorkbook
Private Sub Workbook_Open()
Dim Fila As Byte
Dim Dias As Variant
Dias = Array("DOM", "LUN", "MAR", "MIE", "JUE", "VIE", "SAB")
NomDias = Dias(Weekday(Date, vbMonday))
[...]
With Worksheets(NomDias)
For Fila = 2 To 31
Application.OnTime .Range("a" & Fila), "'WAVs_programados""" & Fila & """" & NomDias & " '"
Next
End With
End Sub
y... un MODULO
Option Explicit
Public Declare Function TocarMusicaWAV Lib "winmm.dll" Alias "sndPlaySoundA" _
(ByVal Archivo As String, ByVal Estado As Long) As Long
[...]
Sub WAVs_programados(ByVal Fila As Byte, NomDias As String)
Dim EsteArchivo As String
EsteArchivo = Worksheets(NomDias).Range("b" & Fila)
TocarMusicaWAV EsteArchivo, 1
MsgBox "La musica esta tocando, y la macro ... ""ejecutando"
End Sub
... marca error... he intentado corregirlo... que... esta en los paramteros, pero no le hallo [...]



'alcanzo a ver' 2 -posibles- 'situaciones' que [en un determinado momento] podrian ser 'causa de errores'...
1) la variable/matriz ->Dias<- es de un tipo de datos variant [y al ser matriz INICIA desde 0 -cero- NO desde 1 -uno-]
el nombre de la hoja [que devuelve ->NomDias = Dias(Weekday(Date, vbMonday))<- NO esta trabajando 'de 1 a 7'
=> a menos que al inicio del modulo especifiques ->Option Base 1<- <= ...
el nombre de la hoja 'va' de 0 a 6 PERO la 'devolucion' de su indice 'va' de 1 a 7 <= OJO
2) a la hora de 'programar' los eventos [con el metodo OnTime] Y... 'pasarle' los argumentos al procedimiento...
es necesario que los argumentos pasen 'separados' Y [si mas de uno] por una coma a partir del segundo... cambia...
de -> Application.OnTime .Range("a" & Fila), "'WAVs_programados""" & Fila & """" & NomDias & " '"
a -> Application.OnTime .Range("a" & Fila), "'WAVs_programados """ & Fila & """,""" & NomDias & """'"
[no te vayas a 'perder' con tantas comillas dobles y los apostrofos que 'delimitan' la cadena completa] :D

si cualquier duda... comentas?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida