* Bonjour *
par curiosité je crée une fonction
d'abord la macro pour "voir le code"
celle ci sur un nombre : 101001 me retourne 41 (vérification avec BINDEC c'est bien 41)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Sub Macro5() Dim at, t, po, point, a a = Range("i9").Value For t = Len(a) To 1 Step -1 at = at + 1 If Mid(a, at, 1) = 0 Then point = point Else point = point + (2 ^ (t - 1)) End If Next Range("g9").Value = point End Sub
pourquoi
me renvoi 167 comme valeur ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Function BiNaire(a As Double) As Double Dim at, t, po, point For t = Len(a) To 1 Step -1 at = at + 1 If Mid(a, at, 1) = 0 Then point = point Else point = point + (2 ^ (t - 1)) End If Next BiNaire = point End Function
j'ai beau retourner ceci dans tous les sens je ne vois pas ce qui coince.
mon effondrement moral est tel que j'envisage de visionner la collection VHS de Dallas de ma mère ... elle a aussi cote ouest
* merci d'avance *
Partager