Excel Downloads
Forum

Précédent   Excel Downloads Forums > Excel > Forum Excel


Réponse
 
LinkBack Outils de la discussion
Vieux 10/01/2004, 15h40   #1 (permalink)
LaurentTBT
Guest
 
Messages: n/a
Par défaut Hexadécimal en décimal sous VBA

Bonjour à tous.

Peut-on convertir un nombre hexadécimal en décimal sous VBA?

En effet, la fonction existe sous excel grâce à l'utilitaire d'analyse (HEXDEC), et par ailleurs, l'excellent fichier de Ti "Fonctions 2000_XP" (pub, lol) me dit que la traduction en anglais est HEX2DEC. Mais sous VBA, worksheetfunction.hex2dec ne fonctionne pas. Bon, si la version Excel n'existe pas, je pourrai toujours passer par un calcul dans une cellule excel, mais ce n'est pas très propre!

Pour être plus précis, je cherche à mettre un contrôle d'une couleur que je connais sous la forme: #003366. 00, 33 et 66 sont les valeurs en hexadécimal des composantes rouges, vertes et bleues, soit en décimal: 00, 51, 102. Je peux donc forcer la couleur ainsi:
MonContrôle.BackColor=RGB(00,51,102), soit 6697728
Il me manque juste la conversion HEXDEC avant, à moins que quelqu'un connaisse une autre méthode pour obtenir directement le code couleur à partir de la valeur initiale (soit convertir directement #003366 en 6697728)

J'espère avoir été suffisamment clair.

Merci d'avance.

Bon week-end.
  Réponse avec citation
ANNONCES
Vieux 10/01/2004, 20h16   #2 (permalink)
Myta
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

Salut LaurentTBT

Partant du principe

Dim Couleur As Long
Couleur = RGB(&H00, &H33, &H66)

Couleur va te donner 6697728

Meme chose pour

Dim Couleur As Long
Couleur = RGB(00, 51, 102)

Sinon la formule est

Couleur=(Red * 1) + (Green * 256) + (Blue * 65536)

Donc

Couleur= (0 * 1) + (51 * 256) + (102 * 65536)

ou

Couleur = (&H00 * 1) + (&H33 * 256) + (&H66 * 65536)

Mytå
  Réponse avec citation
Vieux 10/01/2004, 21h05   #3 (permalink)
Roland
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

Bonsoir à tous

Fort de tous ces renseignements cette fonction doit faire l'affaire

Function hdc(cc As String) As Long
hdc = (Mid(cc, 2, 1) * 16) + (Mid(cc, 3, 1)) _
+ (Mid(cc, 4, 1) * 16 * 256) + (Mid(cc, 5, 1) * 256) _
+ (Mid(cc, 6, 1) * 16 * 65536) + (Mid(cc, 7, 1) * 65536)
End Function

A+ Roland
  Réponse avec citation
Vieux 10/01/2004, 21h24   #4 (permalink)
LaurentTBT
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

Bonsoir à tous

Un grand merci à vous deux, c'est nickel.
Voilà de quoi en faire de toutes les couleurs!

Bon dimanche.
  Réponse avec citation
Vieux 21/10/2004, 18h29   #5 (permalink)
avoriaz
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

SALUT

bien cette fonction m'interresse bien fort

d'ailleur je voudrais convertir un colonne complette de valeur decimal en hexa et hexa vers decimal ???

c'est possible ?

avo
  Réponse avec citation
Vieux 21/10/2004, 19h24   #6 (permalink)
Ti
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

je me souviens avoir mis aussi un fichier sur le forum avec une macro qui effectuait des conversions multibases.
  Réponse avec citation
Vieux 21/10/2004, 19h28   #7 (permalink)
avoriaz
Guest
 
Messages: n/a
Par défaut Re: Hexadécimal en décimal sous VBA

MERCI ti pour ta reponse j'essaye de retrouver ta macro !!!


avo

j'ai regarde sur veriti aussi au passage
  Réponse avec citation
ANNONCES
Réponse

Liens sociaux

Outils de la discussion

Règles de messages
Vous ne pouvez pas créer de nouvelles discussions
Vous ne pouvez pas envoyer des réponses
Vous ne pouvez pas envoyer des pièces jointes
Vous ne pouvez pas modifier vos messages

Les balises BB sont activées : oui
Les smileys sont activés : oui
La balise [IMG] est activée : oui
Le code HTML peut être employé : non
Trackbacks are oui
Pingbacks are oui
Refbacks are oui


Discussions similaires
Discussion Auteur Forum Réponses Dernier message
conversion en hexadécimal darkspoilt Forum Excel 1 27/11/2007 15h23
Convertion Héxadécimal deni29 Forum Excel 4 06/09/2007 17h11
Passage Latitude et longitude en Décimal sous VBA baptbapt Forum Excel 2 01/08/2006 15h30
HEXADECIMAL philippe Forum Excel 2 16/03/2006 09h03
Hexa/Binaire/décimal sous Excell Lachdann Forum Excel 3 01/10/2005 15h26


Fuseau horaire GMT +2. Il est actuellement 15h58.


(C) 2006 Excel Downloads