Substitution simple

56chiffre.zip (4.78 Ko)

Bonsoir Forum

Un petit fichier explicatif pour une formule de substitution simple si réalisable !

Amicalement

Adrien

Bonjour,

Voir dans le fichier joint, cette formule :

=RECHERCHEV(AB20;$A$2:$Z$27;EQUIV(AB20;$A$2:$A$27))

Question : c'est pour décrypter un code ? Sur Mortvif ?

A+

42chiffre.zip (4.95 Ko)

Bonsoir dachevid

Ca m'a l'air intéressant. Il faut que je vois dans la pratique.

C'est pour correspondre avec un ami crypto. C'est de la rigolade pour lui. Il a baigné dans le chiffre depuis tout petit.

Je voyais plutot ca sous forme de macro pour ne pas être obligé d'écrire la formule dans les cellules.

Merci

Adrien

Bonjour à tous,

Adrien,

ta grille fait doublons, normal ?

si tu écris "WBHE"

c'est le même résultat que pour "JOUR"

Claude

Bonsoir Forum, Bonsoir Claude

Effectivement, le I peut remplacer soit le E ou le R. Le G remplace le D ou le Q

PLACE DE L OPERA DEMAIN DIX HEURES (texte clair)

EWAEI GI W CEIIA GIYAQA GQU OIOIIK (texte chiffré)

EWAEI GIWCE IIAGI YAQAG QUOIO IIKWU

(pour augmenter la difficulté on fait des groupes de 5 lettres pour ne pas distinguer le nbr de mots. En ajoutant des lettres au hasard à la fin pour finir le dernier groupe).

Amicalement

Adrien

Bonjour à tous,

Finalement la grille ne sert pas à grand chose, pour ne pas dire à rien !

Un simple "RECHERCHEV" fait le même usage

hé oui, encore cette fonction !!

Sub Codage() 'avec RECHERCHEV
'Macros par Claude Dubois pour "AdrienHeiser" Excel-Pratique le 19/10/10
Dim i%, Cel As Range, CeLd As Range, Nb%, x, z$
    Application.ScreenUpdating = False
        Set CeLd = Range("a1") 'mot ou phrase à coder
        Set Cel = Range("a3") 'résultat
        Cel.ClearContents
    For i = 1 To Len(CeLd)
        z = WorksheetFunction.VLookup(Mid(CeLd, i, 1), Range("Tablo"), 2, 0)
        Cel = Cel & z
    Next i
        '--- groupes de 5 ---
        Cel = WorksheetFunction.Substitute(Cel, " ", "")
        i = 1
        z = 5
    For i = 1 To Len(Cel) Step 5
        Cel = Mid(Cel, 1, z) & " " & Mid(Cel, z + 1, 200)
        z = z + 6
    Next i
        '--- complète dernier groupe ---
        Cel = Trim(Cel)
        x = Split(Cel, " ")
        Nb = Len(x(UBound(x)))
    For i = 1 To 5 - Nb
        Cel = Cel & Mid(Cel, i + 1, 1)
    Next i
End Sub

Dommage que ton cryptage autorise des doublons, on aurait pu décoder (faire l'inverse)

Amicalement

Claude

22codage2.zip (15.97 Ko)

Comment fais tu pour décoder le message reçu par ton ami? Dubois a raison, pour décoder ça fait plusieurs solutions.

Bonjour Forum

Effectivement, il y a un souci. J'ai fait un test et ca ne colle pas. Je revois ma copie et reviens vers vous.

Mes excuses. parti un peu vite.

Adrien

22chiffre.zip (5.26 Ko)

Bonsoir Forum

Voila, ca va nettement mieux avec une clef. Maintenant est-il possible d'informatiser le code ?

Merci

Amicalement

Adrien

Bonjour,

Pour décoder :

=RECHERCHEV(AB6;$A$2:$Z$27;EQUIV(AB5;$A$2:$Z$2;0))

Pour coder :

=INDEX($A$2:$Z$2;;EQUIV(AB17;DECALER($A$2;EQUIV(AB16;$A$2:$A$27;0)-1;;;26);0))

A+

19chiffre.zip (6.06 Ko)

Bonsoir dachevid,

Ca fonctionne. Merci.

Le seul souci est que pour chiffrer un texte d'une page par exemple je suis obligé d'adapter les formules ce qui peut être source d'erreurs.

Je garde ta solution pour les petits messages.

Merci, sympa et rapide

Amicalement

Adrien

Rechercher des sujets similaires à "substitution simple"