Saltar al contenido

Problema con módulo y error en Case sin Select Case


Recommended Posts

publicado

Hola a todos

Tengo éstos dos códigos un dos módulos diferentes

pero me da error Case sin Select Case, y no entiendo el motivo, si apenas tengo código, eso esto que pongo

Y ya de paso, preguntar si el for sería correcto para rellenar celdas con la letra "E", desde la celda que conincida con el valor que contiene la variable instante en la fila número 17, el número de celdas que contiene la variable tiempo

Lo que busco, es que, si por ejemplo, progreso tiene el valor "A", instante tiene el valor 4, y tiempo tiene el valor 6. Se empiece a escribir la letra "E", en la fila 17, y desde la celda "E17", hasta la celda "J17", suponiendo que la tabla a rellenar empieza en la celda A16, teniendo las cabeceras de la misma ocupando la fila 16 y la columna A

Las variables están declaradas en otro módulo como públicas

Muchas gracias

 


Sub calcular()

    proceso = Range("D4").Value
    instante = Range("G4").Value + 1
    tiempo = Range("k4").Value
    
    SRT

End Sub

 

Sub SRT()

Select Case progreso

    Case "A"
    
            For i = instante To tiempo
                Cells(17, i).Value = "E"
                
    Case "B"
            For i = instante To tiempo
                Cells(18, i).Value = "E"
   
    Case "C"
   
    Case "D"
   
    Case "E"
   
    Case "F"
   
    Case "G"
   
    Case "H"
   
    Case "i"
   
    Case "j"
                                        
End Select

End Sub

 

publicado
Hace 11 horas, el_trasgu dijo:

Las variables están declaradas en otro módulo como públicas

¿Y dónde tienes los "Next i"?

publicado

Home !!!, no me digas que era por eso

Pues muchas gracias Haplox, el que no sabe, es como quien no ve

Había mirando por internet, pero no lo ví en ningún método, ahora si fuciona

Lo dicho, muchas gracias

publicado

¡Fíjate tu!, y a mi que me gusta más así:

Sub SRT()
Select Case progreso
   Case "A": f = 17
   Case "B": f = 18
   Case "C": f = 19
   Case "D": f = 20
   Case "E": f = 21
   Case "F": f = 22
   Case "G": f = 23
   Case "H": f = 24
   Case "I": f = 25
   Case "J": f = 26
End Select
Cells(f, instante).Resize(1, tiempo - instante + 1).Value = "E"
End Sub

 

publicado
Hace 1 hora, Antoni dijo:

¡Fíjate tu!, y a mi que me gusta más así:


Sub SRT()
Select Case progreso
   Case "A": f = 17
   Case "B": f = 18
   Case "C": f = 19
   Case "D": f = 20
   Case "E": f = 21
   Case "F": f = 22
   Case "G": f = 23
   Case "H": f = 24
   Case "I": f = 25
   Case "J": f = 26
End Select
Cells(f, instante).Resize(1, tiempo - instante + 1).Value = "E"
End Sub

 

Que grandes soid, pero a unos niveles que están muy por encima de mis posibilidade

Tomaré nota, muchas gracias

publicado

Hola maestros....

Reduciendo un poquitín el código de Antoni:

Sub SRT()
     Cells(asc(progreso)-48, instante).Resize(1, tiempo - instante + 1).Value = "E"
End Sub

 

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.