Probleme exercice

bonjour à tous,

voila j'ai un problème à un exercice mais je n'arrive pas à le résoudre;

je dois réaliser le codage et/ou le décodage de message à partir de matrice mais je n'arrive pas à trouver les formules adéquats sur vba ni comment procédé au départ car je trouve que cela fait beaucoup de boulot entre trouver la matric einverse décomposer le texte et j'en passe

enfin voila

merci à ceux qui me réponde.

Bonsoir, Bienvenue sur le Forum

Toi seul comprends le probléme.

Envoie le fichier, regarde joindre un fichier, en haut et à droite de cette page.

Cordialement

voila le fichiers enfin juste l'explication

Bonjour,

Tu nous donnes l'énoncé de ton problème.

Bon, ce n'est pas vraiment dans l'esprit du Forum que d'apporter une solution clé en main. Nous sommes davanage là pour t'aider que pour faire le travail à ta place.

Cela dit, j'ai lu, puis relu et n'ai pas compris grand chose.

Il semble qu'il faille utiliser une méthode matricielle vue en TD.

Peux-tu nous dire si tu étais présent à ce(s) TD et nous donner davantage d'explications sur ce qu'il faut faire et sur cette méthode matricielle.

A te (re)lire avec suffisamment de précisions.

@+

tmm

2calendrier.xlsm (104.53 Ko)

Salut gege37,

Ton explication étant peu claire, peux-tu donner un exemple concret?

Et que représente le 26 dans ta formule 'A = 26xB + C'? Est-ce que nombre de lettres = nombre de caractères?

Que représente le B?

Salut gege37 et le forum,

En lisant ton sujet sur la cryptographie, il m'avait semblé que la méthode de cryptage exposée était connue.

En effectuant quelques recherches, il s'avère que cette méthode est appelée "Cryptographie de Hill".

Sachant cela, regarde le fichier que j'ai créé. Il te mettra sur la voie : cryptage/decryptage

Le fichier créé donne l'exemple du décryptage d'un message avec une matrice donnée.

Pour d'autres messages avec d'autres matrices, modifie les cellules correspondantes.

Je n'ai fait que le décryptage, mais pour le cryptage, la méthode est strictement la même.

Pour le décodage du message crypté qui se trouve sur la feuille, il suffit de cliquer sur le bouton 'Décryptage du message'.

Par contre, étant encore débutant en VBA, je ne sais pas comment faire pour concaténer les lettres (qui se trouvent dans différentes cellules) du message après décodage, pour les "rassembler" dans une seule cellule.

Si tu as des questions, n'hésite pas!

merci beaucoup

mais si on veut le faire avec une boite de dialogue qu'est ce que cela put donnée?

Eh gégé ça va ? Vacances02

Sérieusement il faudrait participer un peu plus que ça, parce que là pour l'instant tu n'as pas beaucoup aidé à la résolution de tes problèmes...

Tu as de la chance que ton sujet ai l'air de passionner vba-new

Essayes plutôt de mettre en forme ton exercice comme tu voudrais le présenter à ton prof, préparer tes méthodes de résolution,...

Ensuite si c'est simplement un problème de formule ou de macro, on pourra toujours te donner un coup de main

Hé hé, en effet, le sujet n'est pas inintéressant Sylvain!!

Comme je l'ai dit dans un message précédent :

Par contre, étant encore débutant en VBA

Je ne sais pas trop faire les boîtes de dialogue en vba!! Donc pour le côté programmation vba, il faudra le concours de quelqu'un d'un peu plus compétent que moi!

Moi je peux t'aider sur le côté réflexion du problème.

Et Sylvain a raison, essaie d'y mettre un peu plus du tien gégé si tu veux qu'on t'aide à résoudre ton problème!!

message reçu

j'ai créé une boite dialogue le problème c'est que je ne sais pas comment faire pour mettre le valeur trouver sur excel sur une zone de texte de la boite de dialogue je sais qu'il faut rentrer un code sur vba en double-cliquant sur la zone de texte mais la je ne vois pas...

Salut gégé et le forum,

J'ai rajouté le code VBA suivant et ça a l'air de marcher:

Sub ValMat()
   Dim valMat1, valMat2, valMat3, valMat4 As Integer

   valMat1 = InputBox("Première valeur de la matrice de décodage ?", "Valeur 1 matrice décodage")
   Range("A5") = valMat1
   valMat2 = InputBox("Deuxième valeur de la matrice de décodage ?", "Valeur 2 matrice décodage")
   Range("B5") = valMat2
   valMat3 = InputBox("Troisième valeur de la matrice de décodage ?", "Valeur 3 matrice décodage")
   Range("A6") = valMat3
   valMat4 = InputBox("Quatrième valeur de la matrice de décodage ?", "Valeur 4 matrice décodage")
   Range("B6") = valMat4
End Sub

Par contre cette macro ne gère pas du tout les erreurs! Il est obligatoire de rentrer des chiffres!

Salut tous,

Bon hier j'ai jeté mon petit pavé dans la mare, mais ensuite j'ai aussi planché chez moi, le sujet étant effectivement intéressant

D'ailleurs ça me fait un peu halluciner de faire ça en DUT Génie Civil (voir messages à décrypter). Moi en Génie Méca j'ai eu je crois 16h de formation à Office, c'est dire si on ignorait totalement l'existence des macros

Et après on dira que de nos jours les diplômes sont données (le mien date de 2000)

Donc hier soir j'en ai fait un peu, mais sans internet et mes cours sur les matrices étant assez loin, j'ai perdu beaucoup de temps à comprendre comment les passer en VBA.

Voilà ce à quoi je suis arrivé : https://www.excel-pratique.com/~files/doc2/cryptage_decryptageV2.xls

Je garde les tables de conversion parce que là ce serait un peu lourd de faire autrement, mais après c'est la macro qui fait tout.

Comme vba-new vient de le faire, je défini les arguments de la matrice en début de code. Là ils sont figés sur la matrice B-1, je pensais mettre un userform qui demande de choisir entre les 4 matrices imposées, où de rentrer la sienne personnalisée.

Remarque : tout traiter en VBA n'est pas ce qui est demandé dans l'exercice, c'est pour montrer à vba-new comment on peut traiter les chaînes de caractères pour les regrouper, plutôt que sa formule "concatener" à l'arrache

j'ai pas fait de bouton pour la macro, faut la lancer à la main

Salut tout le monde,

plutôt que sa formule "concatener" à l'arrache

En effet sylvain!! En plus on peut concaténer que 30 cellules max!! Donc ça faisait que le message décodé n'était même pas entier!!!

Ton fichier a l'air d'être un bon début en terme d'interface sylvain!!

Mais pour entrer la matrice de codage/décodage, comment faire

excuser moi mais j'ai un petit problème

quand je fais le calcul matricielle je n'ai la valeur que pour le premier chiffre mais pas pour le deuxième ce qui fait que je n'ai le décryptage bon que pour une lettre sur deux et je ne comprend pas pourquoi

peut-être parce que il n'y a pas les "'{}" sur les valeurs matricielles??

heu en fait le probleme c'est que je fais ctrl+maj+entrer il n"y a que le premiere valeur qui s'affiche mais pas les suivantes et je ne voit pas comment faire pour toute les afficher

Sur l'exemple de vbanew, sélectionnes la plage (D5:E6) avant de rentrer la formule que tu valides par ctrl+maj+entrée

merci beaucoup sa marche bien

Je crois que j'ai bien avancé hier...

Pas eu le temps de tout tester, mais si tout va bien j'arrive à crypter/décrypter en 2x2 et 3x3 personnalisables 8)

Par contre ce matin j'ai oublié de prendre ma clé usb, avec mon classeur dedans...

Dommage car avec la charge de travail que j'ai cette semaine, j'aurais bien pu y consacrer un peu de temps au boulot

Cet aprèm j'essaye d'optimiser un peu mes codes, puis je vous enverrai ma dernière version.

Gege t'en es où ?

T'as réfléchi à une mise en forme ? à des compléments pour faire monter la note ?

Salut sylvain,

J'ai hâte de voir ce que donne ton fichier!!

Rechercher des sujets similaires à "probleme exercice"