Visual Basic para Aplicaciones - Error 424 Se requiere un objeto Excel

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Error 424 Se requiere un objeto Excel

Publicado por Javier (4 intervenciones) el 09/09/2014 04:42:55
Buen día a todos.
Espero me puedan ayudar, soy nuevo en esto de visual basic y excel y me he topado con varios errores que hasta ahora había podido solucionar, luego salió este y aquí estoy.
La cosa es que tengo un código un poco largo y cuando lo estaba ejecutando excel me dijo que el procedimiento era demasiado largo y lo dividí en dos. Solo tengo un evento, el evento "Change" y desde ahí llamo a dos procedimientos mediante "Call", el problemas es que cuando ejecuta la primera la linea del primer procedimiento que llamo me sale el error "Se requiere un objeto".
Necesito que me expliquen cuál objeto es el que me pide y cómo se lo doy.
Gracias de antemano por su ayuda.

Les adjunto el archivo de excel.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de JuanC

Error 424 Se requiere un objeto Excel

Publicado por JuanC (565 intervenciones) el 09/09/2014 04:58:57
Te modifiquè el còdigo, ya te daràs cuenta cuàl era el problema...

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Error 424 Se requiere un objeto Excel

Publicado por Javier (4 intervenciones) el 09/09/2014 05:06:13
JuanC
Gracias por responder, quisiera ver los cambios que le hiciste al código.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Error 424 Se requiere un objeto Excel

Publicado por Javier (4 intervenciones) el 09/09/2014 05:13:19
JuanC. Gracias estaba sencillo, no tenés una idea cómo me quebré la cabeza con eso... De todos modos, gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JuanC

Error 424 Se requiere un objeto Excel

Publicado por JuanC (565 intervenciones) el 09/09/2014 15:22:50
Hice algunos cambios para optimizar el còdigo...
(sòlo lo hice con 3 rangos, falta completar el resto...)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
Private Sub worksheet_Change(ByVal target As Range)
If target.Count = 1 Then
   Call update(target)
End If
End Sub
 
Sub update(ByVal target As Range)
Dim hora%, minuto%
Dim vRange As Variant, vRef As Variant
Dim i%
vRange = Array(Range("B11:C13"), Range("D11:E13"), Range("F11:G13"))
vRef = Array("B14", "D14", "F14")
 
For i = 0 To UBound(vRange)
    If Not Intersect(target, vRange(i)) Is Nothing Then
       hora = Application.WorksheetFunction.Sum(vRange(i).Resize(, 1))
       minuto = Application.WorksheetFunction.Sum(vRange(i).Offset(, 1))
 
       Select Case minuto
              Case 60 To 119
                   hora = hora + 1
                   minuto = minuto - 60
              Case 120 To 150
                   hora = hora + 2
                   minuto = minuto - 120
       End Select
 
       With Worksheets("mes").Range(vRef(i))
            If hora = 1 Then
               .Value = hora & " hora " & minuto & " minutos"
            Else
                .Value = hora & " horas " & minuto & " minutos"
            End If
 
            Select Case hora
                   Case 0
                        .Font.Color = RGB(156, 0, 6)
                        .Interior.Color = RGB(255, 199, 206)
                   Case 1 To 2
                        .Font.Color = RGB(0, 97, 0)
                        .Interior.Color = RGB(198, 239, 206)
                   Case Else
                        .Font.Color = RGB(156, 101, 0)
                        .Interior.Color = RGB(255, 235, 156)
            End Select
       End With
 
       Exit For
     End If
Next
 
End Sub

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Error 424 Se requiere un objeto Excel

Publicado por Javier (4 intervenciones) el 09/09/2014 21:01:55
¡Vaya optimización! Reducir un código de 1900 lineas a 50... Todavía me queda demasiado que aprender...
El código se ve elegante ahora jajaja
Muchas gracias JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JuanC

Error 424 Se requiere un objeto Excel

Publicado por JuanC (565 intervenciones) el 09/09/2014 21:35:27
Nunca se termina de aprender cuando se quiere... hace como 15 años vengo aprendiendo, y sigo...

Saludos, desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar