Formule excel pour base hexadecimal [Fermé]

kekedu90210 1 Messages postés mercredi 12 octobre 2011Date d'inscription 12 octobre 2011 Dernière intervention - 12 oct. 2011 à 19:08 - Dernière réponse :  Oussama
- 13 oct. 2011 à 19:58
Bonjour, j'ai un convertisseur de base à effectuer. je dois trouver une formule permettant de convertir un nombre d'une base quelconque inferieure ou égale à la base 16 vers la base 10.
de 0 à 9 pas de probleme , c'est pour de 10 à 15 donc de A à F que c plus délicat pour transcrire sur excel.
Si quelqu'un à une idée elle serait la bienvenue . Merci d'avance!




Afficher la suite 

5 réponses

+1
Utile
1
Salut

À partir d'un travail 100% personnel (de mémoire) !

Avec l'aide de tutos OpenOffice sur le web et ou à télécharger.

Servez-vous mais je voudrais voir ce que je voulais/pensais faire :-)

Ça fonctionne, mais je ne sais plus le faire (...) ; et j'ai pas fini en plus :

(Un fichier au format LibreOffice (ex OOo en fait) est (in)disponible ...)

Par expérience convertisseur binaire / décimale ; mieux que Windows :

Si tu as le champ libre sur la méthode :

Crées un tableau, avec en haut une ligne entrée et une ligne sortie.

Il ne doit y avoir qu'un caractère par cellule.

En dessous, tu vas crées le calculateur ; utilises des couleurs.

Les couleurs peuvent servir dans le processus de calcul si tu veux.

Tu pars de la droite vers la gauche ; du coté du chiffre de poids faible.

Il faut prévoir les cellules pour les retenues et les calculs intermédiaires.

Tu sautes 1 lignes pour continuer le calcul ; penses à un escalier.

En fait, tu pars en haut avec 1 case + à gauche, la case de retenue.

En dessous tu pars avec 2 cases + à gauche, la case de retenue.

En dessous tu pars avec 3 cases + à gauche, la case de retenue.

Tu calculs comme à la main ; tu simules un calcul manuel.

Chaque cellule ne vas calculer qu'une partie du problème.

À la fin, il reste le résultat que tu récupères depuis la ligne en haut.

Pour agrandir le tableau et la puissance de calcul tu tires-colles.

En binaire vers décimale et ou inversement (je sais plus), il est possible de dépasser la capacité de calcul de la calculatrice Windows ; avec ce principe de tableau calculateur.

La où ça coince, c'est de trouver une astuce pour éviter d'avoir à agrandir le tableau manuellement et en dur, si on veut pousser à l'infini la puissance de calcul.

Ha, oui, il ne faut pas calculer que avec les chiffres mais aussi avec les nombres au format texte ; dans chaque cellule, tu dois utiliser la conversion des nombres en texte et inversement car il y a des opérations qui ne fonctionnent pas selon le type de la donnée comme dire "récupérer le dernier caractère à gauche (la retenue en fait) et l'inclure dans ce calcul" (on ne peut pas sélectionner un chiffre à une certaine position dans un nombre au format nombre) ; et inversement pour faire 1 + 1 il faut que les nombres soient au format nombre. Ça va servir à traiter la retenue ou les calculs intermédiaires.

Les lettres ? Et bien, c'est pas compliqué sur le principe (je crois), tu as A B C D E F, tu fais un tableau à part pour les correspondances comme tu le ferais à la mains pour convertir un seul caractère. Et depuis chaque cellule du tableau (...), tu récupères la correspondance pour faire le calcul. Faut bouffer du "si" ou ruser car les "si" sont limités dans une même cellule ; remplaces les lettres par des chiffres = crées une ligne complète en dessous de la ligne d'entrée pour convertir toutes les lettres A = 10, B = 11, (...). Il y a peut-être une fonction existante pour traiter au moins un nombre à 2 chiffres.

Fais déjà l'ossature du tableau ; tu pourra mieux faire les formules.

Tu fais 3 lignes (2 entrée (1auto) + 1 sortie) et tu fais 3 lignes pour le tableau calculateur.

Ensuite tu remplis en dur sur dix colonnes l'entrée, tu places les formules dans l'entrée automatique pour convertir les lettres en chiffre ; puis tu t'attaques à la première cellule en haut à droite du calculateur + la cellule de retenue (mets un grand nombre en entrée = tests tout) ; en même temps, tu peux commencer à faire les cellules sur la ligne en dessous pour réfléchir.

Si tu tests correctement les 2 premières lignes, il suffit de copier après.

J'espère que c'est à peu près digeste (même pour moi) ;))
Cette réponse vous a-t-elle aidé ?  
Merci pour les -1 ; ne proposez rien, crashez sur le travail d'autrui (même si c'est loin d'être parfait) ; des fois je lis des trucs incompréhensibles, mais je me dis que c'est moi qui n'ai pas assez d'élément de savoir pour tout comprendre ou je me dis que la personne à des difficultés pour faire autrement et j'essaye de faire avec !

Marine vite; vite, vite ; bein oui à force ; certains en font la promotion (il semble être des chargés de promotion) et en plus malgré eux, voir "cortex" un rappeur sur YouTube.

Vous avez vu la prof qui c'est immolée ? Vous poussez les gens au suicide sur ccm ; je ne suis pas la seule personne que vous poussez au suicide. Ceux qui ont déjà pratiqués du harcèlement à l'école ou qui le font encore et qui peuvent aussi organiser les bizutages (interdit depuis peu en France, un peu tard à mon goût) sont sur ccm = c'est des co***ds qu'ils faut tuer sans sommation.
+1
Utile
slt

Un dessin rapide ; tableau à créer dans Excel ou Calc (Libreoffice) :

C'est du texte dans le calculateur, pas des nombres au format nombre.

Sauf nouveauté, la manipulation des chaines se fait uniquement sur du format texte. il faut convertir les nombres au format nombre pour les calculs mais le résultat est converti au format texte.

ENTRÉE-HEXADÉCIMALE: 
| 0 | 0 | 0 | 0 | F | 
| 00| 00| 00| 00| 16| 
SORTIE-DÉCIMALE: 
| 0 | 0 | 0 | 1 | 6 | <= Résultat depuis ligne contenant X Z 
--------------------- 
| - | - | - |R01|016| <= TIRETS ÉCRITS EN DUR (R aussi) 
| - | - |R00|001| D | 
| - |R00| X | D | F | 
|R00| X | Z | 1 | 6 | <= Ligne X Z 
---------------------


D = si la cellule au dessus et à gauche commence par R.
X = si la cellule au dessus commence par R et fini par 00.

F = si la cellule à gauche contient D ou F.
Z = si la cellule à gauche et au-dessus contient X.

"-" = si cellule à droite commence par R ou "-"

R?? = calcul retenue si cellule au dessus et à droite commence par R.

Les tirets sur la première ligne sont écrits en dur.

Les tirets sur les lignes suivantes sont un résultat de calcul.

Il faut peut-être mettre 3 chiffres au lieu de 2 car 16 x 16 = 256.

J'arrive pas le faire à la main pour FF = 255 pour vous fournir la base ; je suis rouillé en math. Mais j'ai l'impression que c'est plus simple de faire une conversion de binaire vers décimale. Je sais que FF = 1111 1111 = 16 X 16 = 255 ou 256 combinaisons (256 combinaisons car la combinaison 00 = 0000 0000 = 0 x 0 = 0 compte aussi).

Je vous laisse le faire vous même pour la suite ; vu qu'en plus y a des personnes qui n'aiment pas le travail d'autrui au lieu d'aider à compléter et à rendre plus didactique et simple à comprendre ce que notamment je propose ; merci pour les -1.
Cette réponse vous a-t-elle aidé ?  
0
Utile
1
slt

Un dessin d'explication rapide :

Il faut centrer le texte dans les cellules. Le résultat de chacune des cellules aura toujours le même nombre de caractères afin de pouvoir manipuler le contenu des cellules sans devoir tester le contenu et sans être obligé de rallonger les formules (c'est limité dans les cellules en plus ; les imbrications de "SI ... ALORS ... SINON ..." par exemple).

C'est du texte dans le calculateur, pas des nombres au format nombre. Sauf nouveauté, la manipulation des chaines se fait uniquement sur du format texte. Faut convertir les nombres au format nombre pour les calculs mais le résultat est converti au format texte.

ENTRÉE-HEXADÉCIMALE:
| 0 | 0 | 0 | 0 | F |
| 00| 00| 00| 00| 16|
SORTIE-DÉCIMALE:
| 0 | 0 | 0 | 1 | 6 | <= Résultat depuis ligne contenant X Z
---------------------
| - | - | - |R01|016| <= TIRETS ÉCRITS EN DUR (R aussi)
| - | - |R00|001| D |
| - |R00| X | D | F |
|R00| X | Z | 1 | 6 | <= Ligne X Z
---------------------


D = si la cellule au dessus et à gauche commence par R.
X = si la cellule au dessus commence par R et fini par 00.

F = si la cellule à gauche contient D ou F.
Z = si la cellule à gauche et au-dessus contient X.

"-" = si cellule à droite commence par R ou "-"

R?? = calcul retenue si cellule au dessus et à droite commence par R.

Les tirets sur la première ligne sont écrits en dur.

Les tirets sur les lignes suivantes sont un résultat de calcul.

Il faut peut-être mettre 3 chiffres au lieu de 2 car 16 x 16 = 256.

J'arrive pas le faire à la main pour FF = 255. Donc ... (rouillé).

J'ai l'impression que c'est plus simple de binaire vers décimale.

FF = 1111 1111 = 16 X 16 = 255 ou 256 combinaisons.

256 car la combinaison 00 = 0000 0000 = 0 x 0 = 0 compte aussi !
Merci pour les -1 ; ne proposez rien, crashez sur le travail d'autrui (même si c'est loin d'être parfait) ; des fois je lis des trucs incompréhensibles, mais je me dis que c'est moi qui n'ai pas assez d'élément de savoir pour tout comprendre ou je me dis que la personne à des difficultés pour faire autrement et j'essaye de faire avec !

Marine vite; vite, vite ; bein oui à force ; certains en font la promotion (il semble être des chargés de promotion) et en plus malgré eux, voir "cortex" un rappeur sur YouTube.

Vous avez vu la prof qui c'est immolée ? Vous poussez les gens au suicide sur ccm ; je ne suis pas la seule personne que vous poussez au suicide. Ceux qui ont déjà pratiqués du harcèlement à l'école ou qui le font encore et qui peuvent aussi organiser les bizutages (interdit depuis peu en France, un peu tard à mon goût) sont sur ccm = c'est des co***ds qu'ils faut tuer sans sommation.