F贸rmulas en Excel

C贸mo crear un generador de contrase帽as en Excel, utilizando funciones nativas

Raymundo Ycaza
#F贸rmulas#Funciones#Seguridad#Trucos Excel#馃 Automatizaci贸n con Excel

Un cliente es la mejor fuente de aprendizaje y en tu caso, tu propia empresa o tu trabajo debe de ser esa inspiraci贸n para nuevas ideas, ya que cada d铆a nacen nuevas peque帽as necesidades que satisfacer.

Imagen de portada, cortes铆a de Pixabay.

Un ejemplo de esto, es el caso de una empresa en la que vi que ten铆an la necesidad de crear un sistema de generaci贸n de contrase帽as para los colaboradores que ten铆an clave de acceso en聽una aplicaci贸n en l铆nea de control de calidad.

El problema era que, muy frecuentemente (son varios empleados), bloqueaban la contrase帽a y no pod铆an acceder a la aplicaci贸n, por lo que ten铆an que ir donde el oficinista y solicitar una nueva contrase帽a.

La nueva clave que recib铆an no era nada complicada, sencillamente deb铆a cumplir con dos requisitos b谩sicos:

  1. Ten铆a que ser sencilla de leer.
  2. No deb铆a de ser f谩cil de adivinar (nada de n煤meros secuenciales)

Pero esta tarea, demandaba unos minutos para 鈥渋nventarse鈥 una nueva clave que siga los lineamientos que se colocaron y, al final, estaba 鈥渃omi茅ndose鈥 una buena parte de tiempo del oficinista (adem谩s de que a veces el empleado ten铆a que esperar a que el oficinista disponga de ese par de minutos para generarle una nueva contrase帽a)

As铆 fue que una vez m谩s, tom茅 a Excel y lo puse al servicio de una causa justa :D

En esta ocasi贸n, me puse a la tarea de crear un sencillo generador de contrase帽as que nos ayude con palabras conformadas por letras aleatorias; pero que puedan ser le铆das f谩cilmente por el usuario.

隆Ah! Y sin usar macros.

As铆 pues, 隆empecemos!

Creando el generador de contrase帽as en Excel.

Veamos, ya te hab铆a dicho que lo 煤nico que se requer铆a de estas contrase帽as es que sean f谩ciles de leer / recordar pero que no se puedan 鈥渁divinar鈥.

Ahora, voy a pulir un poco m谩s lo que quiero lograr, para tener claro todo antes de empezar:

  1. Que no utilice macros (mantenlo sencillo)
  2. Que sea f谩cil de leer.
    1. La contrase帽a deber谩 de ser en el formato: consonante, vocal, consonante, vocal
    2. Al final tendr谩 un n煤mero de cuatro d铆gitos.
  3. Para hacerlo m谩s compatible con las pol铆ticas de la mayor铆a de sistemas, le colocaremos una letra may煤scula al principio.

Al final, lo que pretendo lograr es lo siguiente:

Generador de contrase帽as en Excel

Bien, ya tenemos clara la idea. Es hora de poner manos a la obra.

Creando una matriz de vocales y consonantes.

Lo que haremos aqu铆, ser谩 crear una tabla de consonantes, may煤sculas y otra de consonantes min煤sculas, as铆:

Generador de contrase帽as en Excel

Y junto a la tabla anterior, vamos a crear otra peque帽a tabla, para las vocales, as铆:

Generador de contrase帽as en Excel

驴Y esto para qu茅?

Pues para facilitarnos la tarea de crear nuestro generador de contrase帽as, respetando las vocales y consonantes, donde corresponde. Ahora te muestro c贸mo lo podr铆as hacer.

Generando la primera letra: Aleatoria y may煤scula.

Para esto, obviamente, vamos a utilizar la tabla de consonantes may煤sculas. Nos apoyaremos de la funci贸n INDICE.

Generador de contrase帽as en Excel

  1. Escribo la funci贸n INDICE y como primer argumento聽el rango de la tabla donde se encuentran las consonantes may煤sculas. No indico ninguna columna (Excel entiende que tomar谩 la columna 1) y separo con un punto y coma.
  2. Ahora indico el n煤mero de la fila que quiero tomar, por ejemplo para la primera fila, escribo el n煤mero 1.
  3. Cierro el 煤ltimo par茅ntesis.

驴Cu谩l es el valor devuelto por la funci贸n INDICE? Pues la primera fila de la tabla, es decir la primera letra que en este caso es la 鈥淏鈥:

Generador de contrase帽as en Excel

Y de esta forma hemos utilizado la funci贸n INDICE para elegir una de las letras de la聽tabla, pero鈥

Necesitamos que la letra sea elegida de manera aleatoria. 驴C贸mo lograrlo?

Pues con otra funci贸n de Excel, esta vez la funci贸n ALEATORIO.ENTRE

Consiguiendo una letra al azar.

驴Y por qu茅 usar esta funci贸n y no simplemente ALEATORIO?

Pues porque la funci贸n ALEATORIO.ENTRE me permite especificar un principio y un final para los n煤meros que espero recibir. Es decir, si quiero un n煤mero aleatorio; pero solo entre los que se encuentran en el rango del 2 al 10, podr铆a utilizar la funci贸n de esta forma:

ALEATORIO.ENTRE(2;10)

驴Vas adivinando聽lo que pretendo hacer?

Entonces, para elegir una de las letras consonantes may煤sculas, primero debo saber cu谩ntas son. Si las cuentas ver谩s que son 21 letras. Entonces, ya que est谩n ordenadas, voy a utilizar esto para obtener por medio de la funci贸n ALEATORIO.ENTRE un n煤mero que se corresponder谩 con el n煤mero ordinal de la letra en el listado.

Vamos a hacerlo que es m谩s f谩cil que leerlo.

Si escribo lo siguiente:

=ALEATORIO.ENTRE(1;21)

Entonces voy a obtener un n煤mero entre el 1 y el 21 驴no es verdad?

Y cada vez que presione la tecla F9, voy a poder ver un nuevo n煤mero que se ha generado por esta funci贸n.

驴Qu茅 tal si aprovecho esto en la funci贸n anterior, es decir, en la funci贸n INDICE que te explicaba hace un momento?

Pues para hacerlo, sencillamente reemplazo el n煤mero 1 por toda la construcci贸n que hice con la funci贸n ALEATORIO.ENTRE y me quedar谩 m谩s o menos as铆:

Generador de contrase帽as en Excel

Entonces, ver谩s que ahora, cada vez que presiones la tecla F9 se mostrar谩 una letra aleatoria y siempre ser谩 may煤scula.

Generador de contrase帽as en Excel

Consiguiendo la segunda consonante, en min煤scula.

隆Perfecto! Hemos conseguido la primera letra. Ahora, solo copia y pega el contenido de esta primera celda en la tercera, as铆:

Generador de contrase帽as en Excel

隆Oh, oh! Algo raro ha sucedido aqu铆.

隆Aparecen vocales!

Eso sucede porque al copiar, se han 鈥渄esplazado鈥 las referencias.

Lo 煤nico que tienes que hacer, es mover el rango que ahora est谩 apuntando a la columna de las vocales, hasta la columna de las consonantes may煤sculas. Para hacerlo, tienes que hacer doble clic a la celda, para editar la f贸rmula en ella y ver谩s que se resalta el rango al que apunta, solo col贸cate sobre uno de sus bordes, hasta que el cursor se transforme en cuatro flechas y arr谩stralo hasta la segunda聽columna, as铆:

Generador de contrase帽as en Excel

隆Ahora s铆! Ya tenemos nuestras dos letras aleatorias consonantes, la primera may煤scula y la segunda min煤scula:

Generador de contrase帽as en Excel

Generando las vocales aleatorias.

Lo primero que haremos ser谩 copiar la f贸rmula de la primera celda, en la segunda, de esta forma:

Generador de contrase帽as en Excel

Y seguiremos la misma receta de antes, es decir, moveremos la referencia desde donde est谩, hasta la columna de las vocales, as铆:

Generador de contrase帽as en Excel

Por supuesto, no debemos olvidarnos de actualizar la f贸rmula, ya que para el caso de las vocales, no requerimos un n煤mero aleatorio entre 1 y 21, si no entre 1 y 5 (ya que las vocales son solo cinco)

Generador de contrase帽as en Excel

Ahora s铆. Ya tenemos funcionando nuestra celda con la primera vocal.

Generador de contrase帽as en Excel

驴Siguiente paso?

隆Exacto!

Copiamos la segunda celda, en la que aparece la vocal y la pegamos en la cuarta celda, de esta manera:

Generador de contrase帽as en Excel

Y, por supuesto, actualizamos la f贸rmula, moviendo el rango tal y como lo hicimos antes:

Generador de contrase帽as en Excel

Y, finalmente, vamos a tener algo como esto:

Generador de contrase帽as en Excel

Luce bien, 驴no es verdad?

Ahora, solo nos falta, agregarle la parte num茅rica al final. Hab铆amos quedado en que ser铆a un n煤mero de cuatro d铆gitos. As铆 que haremos lo siguiente:

  1. Generaremos un n煤mero entre 1 y 9999
  2. Le daremos un formato de cuatro d铆gitos, por si se diera el caso de que obtengamos un n煤mero menor que mil.

Entonces, lo primero es la funci贸n que nos de el n煤mero aleatorio:

ALEATORIO.ENTRE(1;9999)

Y luego, le damos el formato a cuatro d铆gitos significativos, as铆:

TEXTO(n煤mero;"0000")

Con lo cual, nos quedar铆a de esta manera en Excel:

Generador de contrase帽as en Excel

Y una vez ejecutada la f贸rmula, lo que obtendr铆amos ser铆a el n煤mero aleatorio de cuatro d铆gitos, tal como lo hab铆amos previsto.

Generador de contrase帽as en Excel

Si en este punto presionas la tecla F9, ya tendr铆as que ver c贸mo se van formando palabras sencillas de leer, m谩s su correspondiente c贸digo num茅rico, las cuales te servir谩n como una contrase帽a generada por tu propio sistema y que t煤 misma o t煤 mismo habr谩s creado en una sola tarde.

驴Los toques finales?

Por 煤ltimo, y solo para darle un toque final, vamos a concatenar todas las celdas que acabamos de crear, en una sola. Adem谩s le daremos el formato que m谩s nos guste: colores, tama帽o y tipo de letra, etc.

Generador de contrase帽as en Excel

El resultado final.

Luego de toda esta larga explicaci贸n, deber铆as de tener algo como esto:

Generador de contrase帽as en Excel

隆Precioso!

O鈥 驴t煤 qu茅 dices?

El archivo terminado.

Si te interesa descargar el archivo terminado, puedes hacerlo con un clic aqu铆.

[caja_suscripcion]

隆Nos vemos!

[firma]

鈫 Regresar al Blog