Macro para detener iteraciones cuando las 3 primeras cifras significativas se repitan

Necesito conocer como declarar en mi macro que realiza iteraciones, que se detenga cuando entre una iteración y la siguiente, las primeras tres cifras significativas de la solución se repitan. Se debe conservar como solución final el valor anterior.

Respuesta
1

22.08.16

Buenas tardes, Ivette

Lo que sigue es una estructura del tipo Do While con alguna modificación para que hagas lo que solicitas. Inserta esta parte en tu código:

'...
varSigue = True 'Cargas una variable con valor VERDADERO antes de entrar en el loop
Do while <condicion1> and varSigue' inicia el ciclo con tu condición y que varSigue sea Verdadero
Prim3Cifras = Int(<valor>) ' carga en una variable la parte significativa
'... aquí irían otras instrucciones propias de tu rutina
    If Prim3Cifras = SoluFinal And Len(Prim3Cifras) = 3 Then ' si coinciden las variables y tiene 3 cifras
        varSigue = False 'pone en falso esta varaible que controla el loop
    Else ' si son distintas
        SoluFinal = Prim3Cifras ' deja como Solución final el último obtendido
    End If
Loop
'... continua tu rutina

La solución para por agregar a la condición de tu iteración (reemplaza <condicion1> por ella) una variable de control que será verdadera hasta que coincidan las tres primeras cifras.

Como no sé de donde las tomas, deberá colocar la fórmula donde escribí Int(<valor>).

Puse ... donde supuse que tendrías otras instrucciones.

Pero espero que interpretes la idea que intento transmitir.

Pruébalo y dime si es lo que buscabas.

Saludos

Fernando

(Buenos Aires, Argentina)

.

GRACIAS!!! Probaré lo que me indica, y le vuelvo a escribir. Gracias otra vez por tomarse el tiempo para mi pregunta.

Hasta muy pronto.

.

Un placer poder ayudar.

Después me dirás si te funcionó.

30.08.16

Hola, Ivette

Noté que nos había quedado pendiente de prueba esto. Si hubieses tenido la oportunidad de probarlo, espero que esto haya ayudado a resolver tu problema.

Si así fuera, agradeceré un comentario y que la valorices para finalizarla.
(Recuerda que mantener cierto número de respuestas pendientes impide que otros usuarios puedan consultarme)

Caso contrario, preguntame de nuevo.

Saludos!

Fernando

.

Hola Fernando! Te acabo de escribir un @. Pero también se me ocurre que quizá ves este foro más frecuentemente que tu correo. ¿Me pregunto si de casualidad estas on line? Entiendo que hoy es domingo, pero si estuvieras, se trata de que:

1. Hice la tarea.

2. Tengo una duda en ella, porque aun que me funciona hasta donde voy, tiene una cosa que primeramente me da error y a la segunda funciona, y quiero que funcione bien a la primera.

3. Estoy en el momento de insertar la rutina que me ofreciste para detectar que se repite la tercer cifra significativa.

¿

? ¿Podrías aparecer para ayudarme?

Te coloco las cosas en ‹› o te mando el archivo por @?

dime como te complico menos...

Un beso atrasado de la semana pasada,

Ivette

.

Hola, Ivette

Vi tanto tus mails como tu pregunta en mi móvil. Hasta el lunes que de la semana próxima (no mañana) estaré en una convención de trabajo. No tendré acceso a PC como para ver tu consulta, lamentablemente.

A mi regreso, revisaré tu proyecto y te haré mis comentarios.

Un beso grande

Fer

.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas