De Locos

15/11/2014 - 07:47 por Ignacio Perez | Informe spam
Buenos días,
Tengo un problema con excel tengo textos que no encuentra. Si parece irreal pero os lo puedo asegurar. uso una función para encriptar texto y me devuelve resultados como este: OE~mcjllccji , bueno pues este texto si lo pones en una celda cualquiera y realizas una búsqueda te dice que no esta en la hoja.
Como os podéis imaginar automáticamente tampoco lo encuentran las funciones.
el texto que os pongo arriba es el encriptado de NYK:07990076 y como pista os puedo decir todos los textos que empiecen con los 4 primeros caracteres (NYK:) y se encripten pasan a ser cadenas de texto que excel no encuentra.
la función de encriptado es esta:

Public Function ENCRIPTA(ByVal Word As String, ByVal Key As String, _
Optional ByVal Mode As Boolean = False) As String
Dim w As Long, k As Long, p As Long, j As Long, NuChr As Long
Dim Cd As String, Kd As String, Rd As String
w = Len(Word)
k = Len(Key)
' Modalidad de Encripción...
If Mode = False Then
For j = 1 To w
Cd = Mid(Word, j, 1)
If p = k Then p = 0
p = p + 1
Kd = Mid(Key, p, 1)
NuChr = Asc(Cd) + Asc(Kd)
If NuChr > 255 Then
NuChr = NuChr - 255
End If
Rd = Rd & Chr(NuChr)
Next
ENCRIPTA = Rd
Exit Function
End If
' Modalidad de Dencripción...
If Mode = True Then
For j = 1 To w
Cd = Mid(Word, j, 1)
If p = k Then p = 0
p = p + 1
Kd = Mid(Key, p, 1)
NuChr = Asc(Cd) - Asc(Kd)
If NuChr < 0 Then
NuChr = NuChr + 255
End If
Rd = Rd & Chr(NuChr)
Next
ENCRIPTA = Rd
Exit Function
End If
End Function

Ademas de la curiosidad que es esto me gustaría encontrar una función de encriptado que funcionase, valga la redundancia.

Preguntas similare

Leer las respuestas

#1 Ignacio Perez
15/11/2014 - 08:37 | Informe spam
Buenos días otra vez,
Creo que ya sé por donde van los tiros. el carácter ~ es un carácter "reservado" para excel y es lo que origina el error en las búsquedas.
Creo que resulta de encriptar la letra K.
¿Se puede modificar el código para que excluya este carácter en las encriptaciones/desencriptaciones?¿existe algún otro carácter que pueda dar este tipo de problemas?, gracias.
Respuesta Responder a este mensaje
#2 Ignacio Perez
16/11/2014 - 08:27 | Informe spam
Me respondo yo solo:
-cambiando la clave (Key) en la funcion he evitado el dichoso caracter y he solucionado el problema.

Conclusion:
He encontrado en internet varias macros para encriptar/codificar en Excel que siguen el mismo principio y utilizan todo el juego de caracteres. Si bien funcionan y codifican el texto resultante NO SIRVE PARA TRABAJAR EN EXCEL.

Saludos
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida