Visual Basic para Aplicaciones - Aleatorio excel vba

Life is soft - evento anual de software empresarial
 
Vista:

Aleatorio excel vba

Publicado por drews (1 intervención) el 09/12/2018 17:13:20
Hi. Necesitaría ayuda para poder hacer con vba en excel lo siguiente:

Tengo números de 8 cifras que van del 0 al 9 y donde puede haber cifras repetidas.
De cada uno de esos números de 8 cifras tengo que extraer un número aleatorio de 4 cifras construido con las que contiene el de 8 cifras. En las cifras del número de 4 pueden repetirse las cifras sin problema.

Pongo ejemplo:
Tengo el número con ocho cifras que van siempre del 0 al 9: 53963107. Ordenando sus cifras sería 01335679.
Tengo que sacar de él un número aleatorio de cuatro cifras que en este caso no puede contener 2, 4 ni 8 porque estas cifras no están en el número de ocho señalado. Pero en las cuatro cifras se permiten repeticiones. O sea, podrían valer por ejemplo 9337 ó 6031.

He usado macros para obtener números aleatorios excluyendo rangos pero no doy con la solución.
Muchas gracias.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Aleatorio excel vba

Publicado por JuanC (565 intervenciones) el 29/12/2018 21:01:23
con suerte te puede servir...

1
2
3
4
5
6
7
8
9
10
11
12
13
Sub test()
Dim n$, i%, t$
 
n = "53963107"
t = VBA.vbNullString
Randomize
 
For i = 1 To 4
    t = t & VBA.Mid(n, VBA.Int((8 * Rnd) + 1), 1)
Next
 
MsgBox t
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar