Escribir número si cumple condición

Necesito que me lea la columna f desde f3 a f53 y que en la columna siguiente devuelva un valor según las condiciones

Sub ComprobarValor()

Dim celda As Long

For celda = 1 To 50

With Sheet4.Cells(6, 3)
Select Case .Value
Case 1 To 5
Sheet4.Cells(7, 3).Value = 1
Case 6 To 9
Sheet4.Cells(7, 3).Value = 2
Case 10
Sheet4.Cells(7, 3).Value = 3
Case Else
Sheet4.Cells(7, 3).Value = 0
End Select
End With
Next celda

End Sub

1 Respuesta

Respuesta
2

Este es el resultado de la macro y abajo de esta imagen esta la macro

 

y esta es la macro

Sub ComprobarValor()
Set datos = Range("f3").CurrentRegion
With datos
    filas = .Rows.Count
    For i = 1 To filas
        numero = .Cells(i, 1)
        Select Case numero
        Case 1 To 5: .Cells(i, 2) = 1
        Case 6 To 9: .Cells(i, 2) = 2
        Case 10: .Cells(i, 2) = 3
        Case Else: .Cells(i, 2) = 0
        End Select
    Next i
End With
End Sub

Hola! Gracias es exactamente eso lo que requiero, pero ejecute la macro y me dice que la variable no está declarada.

Si tienes option explicit escrita vas a tener que declarar las variables

dim filas as single

dim datos as range

dim numero as single 

dim i as single

O bien puedes borrar option explicit

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas