Borrar celda de acuerdo al ultimo dígito numérico en excel

Lo que necesito es que de acuerdo a un rango "A1:D100" borrar las celdas de acuerdo a su ultimo dígito numérico

Respuesta
1

.27.03.17

Buenas tardes, Jhon

La siguiente rutina borra el contenido de las celdas -en el rango indicado- que coincidan con el número que le indiques en la variable Criterio. Despúes dirás si ese valor lo debe tomar de alguna celda o cómo se lo informas.

Ya sabes, ingresa al Editor de VBA (Atajo: Alt + F11), allí inserta un módulo (Insertar-Módulo) y pega el siguiente código:

Sub BorraXult()
'---- Variables modificables ----
'=== JHON, modifica estos datos de acuerdo a tu proyecto:
    Criterio = 8 'numero a considerar
    ElRango = "A1:D100" ' rango de
'---- fin Variables
'
'---- inicio de rutina:
'
For Each LaCelda In Range(ElRango)
If Right(LaCelda, 1) = Criterio Then LaCelda.ClearContents
Next
End Sub

Espero que sea lo que buscas.

Un abrazo

Fer

.

La macro no funciona no borra ningún numero tiene alguna falla

.

Buenas, Jhon

En principio se me ocurre que la celda muestre un número pero tenga espacios a continuación de él.

Si ese fuera el caso, esta variante de aquella rutina deberías resolverlo.

Sub BorraXult()
'---- Variables modificables ----
'=== JHON, modifica estos datos de acuerdo a tu proyecto:
    Criterio = 8 'numero a considerar
    ElRango = "A1:D100" ' rango de
'---- fin Variables
'
'---- inicio de rutina:
'
For Each LaCelda In Range(ElRango)
If Right(Trim(LaCelda), 1) = Criterio Then LaCelda.ClearContents
Next
End Sub

Nota que, en este caso, la rutina borra las celdas donde encuentre que termina con 8.

Desde luego, puedes cambiar ese valor.

Si, aún así, no funcionase, ayudaría que muestres algunos ejemplos de esos códigos para ver dónde está el número.

Saludos

Fernando

.

1 respuesta más de otro experto

Respuesta
-1
Sub Eliminar() '''' borrar las celda que acaban en 4
Set Rango = Sheets("Hoja1").Range("A1:D100")
   For Each Celda In Rango
       If Right(Celda, 1) = 4 Then
    Celda.Clear
    End If
    Next
End Sub

Mira a ver si te sirve esta macro.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas