Encontrar el último número positivo de una columna

En una pregunta en el blog, Rafael Medina necesita conseguir el último número positivo de una columna con celdas vacías, números, texto o fórmulas.

Pues bien lo resolvemos con este ejemplo sencillo utilizando código VBA, puede servir también para aprender cómo funciona una variable, cómo averiguar la última celda rellena de una columna o cómo crear un bucle que recorra las celdas del final al principio y que a su vez vaya comprobando si el contenido de la celda es positivo.

Encontrar UltimoPositivo ExcelTrucos Ahora simplemente abre el editor de VBA (Alt + F11), Insertar > Módulo y pega o escribe el código. Debes tener en cuenta la columna con la que trabajas, en este ejemplo es la columna B por eso aparece en el código Range(“B1048576”), y en Cells(i,2) , recuerda que 2 es la segunda columna, “la columna B”.

Encontrar Ultimo Positivo ExcelTrucos

Option Explicit
Sub Ultimo_positivo()

    Dim Vultimodato As Integer ‘ definimos las variables recuerda que el texto que va despues de ‘ es un comentario al código
    Dim i As Integer
    
    Range(“B1048576”).Select ‘ ultima celda de la columna B
    Selection.End(xlUp).Select ‘ hacia arriba la última fila rellena
    
    Vultimodato = ActiveCell.Row ‘ añadimos a la variable el valor de la última fila
    
    For i = Vultimodato To 1 Step -1 ‘ creamos un bucle que recorra todas las filas de abajo arriba hasta que una celda sea nimérica y > 0
        
        If IsNumeric(Cells(i, 2)) And Cells(i, 2).Value > 0 Then
        MsgBox “Último nº positivo: ” & Cells(i, 2) ‘ muestra un mensaje con el nº positivo último
        
        Exit Sub ‘ en cuanto encuentre el positivo sale de la macro
        
    End If
        
    Next
End Sub

Para acabar si quieres crear un botón para agregarle la macro, sólo tienes que ir a la ficha Desarrollador o Programador e Insertar > Control de formulario > Botón. Lo dibujas en la hoja de Excel y automáticamente te preguntará qué macro quieres asignarle, le indicas Ultimo_positivo. Ahora sólo pulsa el botón y comprueba como un mensaje te dice cuál es el último positivo.

Encontrar Ultimo Positivo ExcelTrucos

En un post anterior puedes aprender cómo ejecutar una macro paso a paso para ver cómo el código va trabajando sobre la hoja de Excel, esto ayuda a comprender la programación. Depurar código VBA en Excel – Ejecutar una macro paso a paso

Este post es un ejemplo de resolución de una necesidad, existen numerosas formas de resolverlo tanto con código como con fórmulas, no dudes en mandarnos tu forma de hacerlo en comentarios exceltrucos smile

 

 

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s