Saltar al contenido

Interpretar una formula a macro


penl44

Recommended Posts

publicado

Que tal buen día

Tengo una base de datos de números y quisiera hacer que del rango donde esta la base da datos si es menor que 15 se convierta a 0 y si es mayor deje el numero que esta en la celda, con siguiente formula se realiza "=Si(C11<15,0,C11)" , pero quiero ver la opción para que lo haga en la misma celda donde esta el numero no hacer otra tabla de numeros.

Dejo el ejemplo, a como lo tengo horita

Ejemplo 2.xls

publicado

Muy buenos dias, aqui adjunto te dejo el archivo con la macro, cuando aplastas el botos 1 se activa automaticamente la macro y cuando habres de nuevo el archivo de vuelve a activar... Si quieres que te descriva los codigos solo dime. Nota: Los rangos estan declarados como tipo Byte, esto con la intencion de no utilizar mucha memoria, si por alguna razon te sale un mensaje de que se desvordo la pila, solo es cuestion de cambiar la declaracion de las variables...

Saludos desde Mexico...

New WinZip File.zip

publicado

Lo bueno del codigo:


Dim men As Byte
Dim x As Byte
Dim y As Byte

For x = 1 To
If Cells(x, y).Value < 15 Then
Cells(x, y).Value = 0
End If
Next y
Next x
[/CODE]

Es que automaticamente te detecta las ultimas celdas si datos y las ultimas filas sin datos gracias a la siguiente expreción:

[CODE]
Range("A1").End(xlDown).Row 'Esta te lee la ultima fila sin datos
Range("A1").End(xlToRight).Column 'Esta te lee la ultima columna sin datos
[/CODE]

Asi que lo unico que tienes que hacer es meter los datos a lo hoja de exel y se selecciona el rango automaticamente con este codigo...

Saludos desde MEXICO...

publicado

Lo mismo lo puedes hacer con

    Dim Celda As Range
For Each Celda In Activecell.CurrentRegion
If Celda.Value < 15 Then Celda.Value = 0
Next[/CODE]

publicado

Recuerda, si por alguna razon te sale un mesaje de desbordamiento de pila vasta con cambiar lo sigueinte:


Dim x As Byte a Dim x as double
Dim y As Byte a dim y as double

ya que al ponerlos como Byte te da rangos de 0 a 255....
[/CODE]

Saludos...

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.