Saltar de una casilla a otra

Quiero que me ayudes con este bucle quiero que cuando encuentre un valor que no sea igual al que le pido me deje la casilla en blanco por favor ayudame.
Sub Prueba_2()
For contador = 1 To 5
Set cells_contador = Worksheets("Hoja1").Cells(contador, 4)
If Cells(contador, 4).Value <= 5 Then Cells(contador, 4).Value = "error"
Next contador
Wend
filalibre = ActiveCell.Row
Cells(contador, 4) = filalibre
End Sub

1 Respuesta

Respuesta
1
Sub Prueba_2()
For contador = 1 To 5
    Set cells_contador = Worksheets("Hoja1").Cells(contador, 4)
    If Cells(contador, 4).Value <> 5 Then
        Cells(contador, 4).Value = " "
    End If
Next contador
filalibre = ActiveCell.Row
Cells(contador, 4) = filalibre
End Sub
Le hice una modificaciones al código que colocas, según te entiendo quieres que cuando el valor de la celda sea deferente a 5 deje la celda vacía, y en la celda 6(de acuerdo al rango que le das) ingresas te coloque la celda vacía.
Fijece que tal le funciona ese código y de acuerdo a eso me cuenta que más necesita que haga, me especificas un poco más.
Ok gracias, lo que quiero hacer es lo siguiente:
Con una macro me ejecute, si en una columna de "x" valores que si es <= 5 me aparesca la palabra ok y si es mayor >= 6 me aparezca la palabra no, por decir.
Tengo la macro hecha pero la segunda condición no me ejecuta, quiero que la revises, por favor y me des corrigiendo.
Te adjunto la macro.
Sub Prueba()
For a = 1 to 5
If Cells(a, 4).Value =< 5 then
Cells(a, 4).Value =  "ok"
Else
If Cells(a, 4),Value = > 6 then
Cells(a, 4).Value = "no"
End If
End If
Next a
End Sub
Gracias
Sub Prueba3()
For a = 1 To 5
    If Cells(a, 4).Value <= 5 Then
    Cells(a, 4).Value = "ok"
        Else
        If Cells(a, 4).Value >= 6 Then
        Cells(a, 4).Value = "no"
        End If
    End If
Next
End Sub
Este serial el código lo único que tenia malo era una coma, tenga en cuenta que esta validación solo se la hará hasta la fila 5, así que si tiene más valores después de esa fila no hará nada, le doy código de una vez en caso que requiera evaluar más celdas
Sub Prueba()
a = 1
Do While Trim(Cells(a, 4).Value) <> emply
    If Cells(a, 4).Value <= 5 Then
    Cells(a, 4).Value = "ok"
        Else
        If Cells(a, 4).Value >= 6 Then
        Cells(a, 4).Value = "no"
        End If
    End If
    a = a + 1
Loop
End Sub
Gracias por enviarme, pero tengo un problema que al rato de ejecutarle solo me ejecuta una sola orden, por ejemplo:
En la columna "A" tenemos:
1
5
7
2
3
Al momento de ejecutarle la macro me debe interlasar las dos respuestas no solo una, dame corrigiendo la macro por fa.
Te envío la macro para que la revises.
Sub Prueba_4()
For a = 1 To 8
    If Cells(a, 4).Value < 5 Then
    Cells(a, 4).Value = "ok"
        Else
        If Cells(a, 4).Value > 6 Then
        Cells(a, 4).Value = "no"
        End If
    End If
Next a
End Sub
Gracias
La correr la macro me funciona bien, estas teniendo en cuenta (a, 4), es la posición de la celda donde va primero la fila ("a") y luego el indicador de columna("4"). Me estas diciendo que la información esta en la columna "A" por tal motivo debes cambiar el indicador de columna a 1.
Según los valores que le estas dando estas dejando por fuera el valor 5, es mejor en el primer if, if cells(a, 4). value<=5 then. Esto con el fin que te coja el valor 5

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas