Está en la página 1de 2

Transposición Ing.

Erick Muñoz Alvarez, MBA


Criptografía
TEC

Imagen Final de la Solución Excel

Referencias Excel

De las columnas A1:H1 colocar la palabra Clave TRANSPOC.


De las columnas A2:H2 colocar el ordenamiento de las columnas.
En el rango A3:H8, se debe de distribuir el mensaje a encriptar.

Literal “strBase” en J1 y el valor en K1 (“abcdefghijklmnñopqrstvwxyz”)


Literal “Clave” en J2 y el valor en K2 (“transpoc”)
Literal “reord” en J3 y el valor en K3 (“86137542”)
Literal “strMensaje” en J4 y el en K4 (“reordena las letras que forman el texto original”)

Datos importantes a tener presente para en encriptamiento:


Literal “filas” en J6 y el valor calculado en K6
Literal “columnas” en J7 y el valor calculado en K7
Literal “largo del mensaje” en J8 y el valor calculado en K8

Visual Basic Habilitar la cinta de programación VB

Habilitar en la cinta de opciones la opción de programador.


Con un doble click podes abrir Microsoft Basic para Aplicaciones.
Agregar un botón para poder trabajar con la opción click.

Para guardar el Excel y mantener las macros se seleccionar en tipo: (“Libro de Excel habilitado para macros”).
Asignación de las macros, sino están asignadas da la sensación de no procesamiento.

Page |1
Transposición Ing. Erick Muñoz Alvarez, MBA
Criptografía
TEC

Encriptar Transposición VB

Sub Transposicion()

‘Definir las variables que se utilizarán

‘Definir las filas y columnas


‘Desplegar en las posiciones indicadas en la primera parte filas, columnas y largo del mensaje.

Cells(6, 11) = fil


Cells(7, 11) = col
Cells(8, 11) = Len(strMensaje)

‘Colocar en una matriz de 6 filas por 8 columnas la frase a encriptar


Dim Matriz(1 To 6, 1 To 8) As String

‘Para llenar la matriz recordar los ciclos y recorrido del mensaje a encriptar

‘Desplegar la matriz resultante en el rango definido en la primera parte


Range("A3:H8") = Matriz

‘Ahora con la matriz ordenada se debe de ordenar por columnas, según el ordenamiento establecido
‘Recordar utilizar ciclos para tal efecto y para buscar la columna a procesar utilizar la función InStr()

‘Por último desplegar la encriptación en la celda K10


Cells(10, 11) = strEncript

‘Ejemplo de ciclos o búcles


For i = 1 to 15
‘Acciones a realizar en cada conteo
Next i

Desencriptar Transposición V.B.

‘Definir las variables que se utilizarán.

‘Colocar en una matriz de 8 columnas por 6 filas la frase encriptada según el ordenamiento.
‘Recordar utilizar ciclos para tal efecto y para buscar la columna a procesar utilizar la función InStr()

‘Para llenar la matriz recordar los ciclos y recorrido del mensaje encriptado.

‘Una vez reconstruida la matriz, recorrerla por fila y columna para desplegar el mensaje

‘Por último desplegar la desencriptación en la celda K12


Cells(12, 11) = strDesEncript

Limpiar Transposición V.B.

Sub LimpiarTransp()
Range("A3:H17") = ""
Cells(6, 11) = ""
Cells(7, 11) = ""
Cells(8, 11) = ""
Cells(10, 11) = ""
Cells(12, 11) = ""
End Sub

Page |2

También podría gustarte