Saltar al contenido

Convertir un rango de números


Recommended Posts

publicado

Buenas tardes una consulta como puedo hacer una macro que al momento de ingresar estos datos (del 1 al 100) en la celda me convirtiera al dar enter automáticamente, entre los rangos de 1 a 5:

En la hoja A1 coloco 50 pero automáticamente debiera aparecer 3, como esta en la descripción de abajo.

De 1 punto a 11 puntos * 0,05 = 1 punto

De 31 puntos a 49 puntos * 0,05 = 2 puntos

DE 50 a 69 puntos *0,05 puntos = 3 puntos

DE 70 puntos a 89 puntos  *0,05 = 4 puntos

DE 90 puntos a 100 *0,05 = 5 puntos

La fórmula la tengo en una celda pero no hay espacio en mi hoja de impresión por eso deseo que haga esa conversión automáticamente al momento de ingresar esos datos.

>>> O existe una formula condicional eso sería más mejor.

Gracias.

publicado
Hace 36 minutos , 6luishao6 dijo:

En la hoja A1 coloco 50 ... que haga esa conversión automáticamente al momento de ingresar esos datos

si solo es para la celda [A1], copia/pega (o escribe) lo siguiente en el modulo de codigo de "esa" hoja:

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address <> "$A$1" Then Exit Sub Else On Error Resume Next
  Application.EnableEvents = False
  Target = Application.Match(Target, [{0,31,50,70,90}])
  Application.EnableEvents = True
End Sub

 

publicado
Hace 11 minutos , 6luishao6 dijo:

no funciona

te parece si adjuntas (una copia RE-DU-CI-DA de) TU modelo (EN archivo "de excel") ?

explica con claridad:

  • que tienes (y donde)
  • que necesitas (como, cuando y donde)
  • y que pasa entre 11 y 31 (???)
publicado

lo vuelvo a plantear:

Buenas tardes una consulta como puedo hacer una macro que al momento de ingresar estos datos (del 1 al 100) en la celda me convirtiera al dar enter automáticamente, entre los rangos de 1 a 5:
En la hoja A1 coloco 50 pero automáticamente debiera aparecer 3. como esta en la descripción de abajo.
( Puntos x 0.05 = XX puntos es una fórmula de multiplicación.)
De 1 punto a 11 puntos * 0,05 = 1 punto
De 31 puntos a 49 puntos * 0,05 = 2 puntos
DE 50 a 69 puntos *0,05 puntos = 3 puntos
DE 70 puntos a 89 puntos *0,05 = 4 puntos
DE 90 puntos a 100 *0,05 = 5 puntos
La fórmula la tengo en una celda pero no hay espacio en mi hoja de impresión por eso deseo que haga esa conversión automáticamente al momento de ingresar esos datos.
>>> O existe una formula condicional eso sería más mejor.
Gracias.
 
enseguida te mandare el archivo reducido
 
publicado
Hace 13 minutos , 6luishao6 dijo:

enseguida te mandare el archivo reducido

mejor esperamos el archivo (con instrucciones y un caso desarrollado ?) porque tu (RE)planteamiento es lo mismo que el original (palabras mas o menos), y lo que sigue quedando "en el limbo" es esto:

Hace 14 minutos , 6luishao6 dijo:
De 1 punto a 11 puntos * 0,05 = 1 punto
De 31 puntos a 49 puntos * 0,05 = 2 puntos

que pasa entre 11 y 31 ?

publicado
Ahora mismo, Héctor Miguel dijo:

mejor esperamos el archivo (con instrucciones y un caso desarrollado ?) porque tu (RE)planteamiento es lo mismo que el original (palabras mas o menos), y lo que sigue quedando "en el limbo" es esto:

que pasa entre 11 y 31 ?

 

PRUEBA.rar

publicado

la macro propuesta "no funciona" por los "detalles" que, si NO los expones en la consulta inicial, tampoco se tienen por que "adivinar" y  porque la adaptación que hiciste es incorrecta:

1) comparar un ".Address" (en vba) es sensible a las (may/min)usculas (a menos que cambies el modo de comparación), cambia a:

  If Target.Address <> "$U$17" Then Exit Sub Else On Error Resume Next

2) otros "detalles" de tu modelo son:
- un exagerado (AB)uso de celdas "combinadas" (sigo sin entender esa nece[si]dad)
- NO es "la única" celda con ese requerimiento (y ya estaba "advertido")

3) haz pruebas y... (no te guardes "detalles en el tintero" ?)

OJO: sigues SIN comentar que sucede con los rangos entre 11 y 31 (?????)

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.