Bonjour,
Pour les pros de la programmation, comment convertir le plus
efficacement (le plus rapidement) un nombre de type LONG par exemple
(donc 32 bits) en son =E9quivalent binaire 0011100..., bref en une
succession de 0 et 1 stock=E9s dans une cha=EEne de caract=E8re ?
Il doit bien y avoir un raccourci.
Merci beaucoup pour l'info.
Il y a la fonction DecBin() avec la macro-comp Utilitaire/Analyse
Fonction perso: convertit base 10 en base b ( jusqu'à 32)
ºse(2;A1)
Function Base(b, n) Do While n >= b result = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b
0, (n Mod b) + 1, 1), 1) & result
n = n b Loop Base = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b > 0, (n Mod b) + 1, 1), 1) & result End Function
JB
On 26 sep, 11:48, Versatile wrote:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Bonjour,
Il y a la fonction DecBin() avec la macro-comp Utilitaire/Analyse
Fonction perso: convertit base 10 en base b ( jusqu'à 32)
=base(2;A1)
Function Base(b, n)
Do While n >= b
result = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b
0, (n Mod b) + 1, 1), 1) & result
n = n b
Loop
Base = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b > 0,
(n Mod b) + 1, 1), 1) & result
End Function
JB
On 26 sep, 11:48, Versatile <courrier.pe...@gmail.com> wrote:
Bonjour,
Pour les pros de la programmation, comment convertir le plus
efficacement (le plus rapidement) un nombre de type LONG par exemple
(donc 32 bits) en son équivalent binaire 0011100..., bref en une
succession de 0 et 1 stockés dans une chaîne de caractère ?
Il doit bien y avoir un raccourci.
Merci beaucoup pour l'info.
Il y a la fonction DecBin() avec la macro-comp Utilitaire/Analyse
Fonction perso: convertit base 10 en base b ( jusqu'à 32)
ºse(2;A1)
Function Base(b, n) Do While n >= b result = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b
0, (n Mod b) + 1, 1), 1) & result
n = n b Loop Base = Mid("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ", IIf(n Mod b > 0, (n Mod b) + 1, 1), 1) & result End Function
JB
On 26 sep, 11:48, Versatile wrote:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Daniel.C
Bonjour. MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Bonjour.
MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum)
Dim quotient, remainder As Single
Dim answer As String
quotient = InputNum
remainder = InputNum
answer = ""
Do While quotient <> 0
remainder = quotient Mod BaseNum
quotient = Int(quotient / BaseNum)
answer = remainder & answer
Loop
baseconv = Val(answer)
End Function
Cordialement.
Daniel
"Versatile" <courrier.perso@gmail.com> a écrit dans le message de news:
1190800089.056196.102470@o80g2000hse.googlegroups.com...
Bonjour,
Pour les pros de la programmation, comment convertir le plus
efficacement (le plus rapidement) un nombre de type LONG par exemple
(donc 32 bits) en son équivalent binaire 0011100..., bref en une
succession de 0 et 1 stockés dans une chaîne de caractère ?
Il doit bien y avoir un raccourci.
Merci beaucoup pour l'info.
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
JB
Bonjour,
Ne fonctionne que pour les entiers <32768.
JB On 26 sep, 12:28, "Daniel.C" wrote:
Bonjour. MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Bonjour,
Ne fonctionne que pour les entiers <32768.
JB
On 26 sep, 12:28, "Daniel.C" <dZZZcolarde...@free.fr> wrote:
Bonjour.
MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum)
Dim quotient, remainder As Single
Dim answer As String
quotient = InputNum
remainder = InputNum
answer = ""
Do While quotient <> 0
remainder = quotient Mod BaseNum
quotient = Int(quotient / BaseNum)
answer = remainder & answer
Loop
baseconv = Val(answer)
End Function
Cordialement.
Daniel
"Versatile" <courrier.pe...@gmail.com> a écrit dans le message de news:
1190800089.056196.102...@o80g2000hse.googlegroups.com...
Bonjour,
Pour les pros de la programmation, comment convertir le plus
efficacement (le plus rapidement) un nombre de type LONG par exemple
(donc 32 bits) en son équivalent binaire 0011100..., bref en une
succession de 0 et 1 stockés dans une chaîne de caractère ?
Il doit bien y avoir un raccourci.
Merci beaucoup pour l'info.
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Daniel.C
Bonjour. Uniquement pour ce qui est de la base 2. On attend alors la limite des quinze chiffres. Je pense que ta fonction réagit de la même façon, ou bien elle fournit une chaîne texte. Daniel "JB" a écrit dans le message de news:
Bonjour,
Ne fonctionne que pour les entiers <32768.
JB On 26 sep, 12:28, "Daniel.C" wrote:
Bonjour. MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Bonjour.
Uniquement pour ce qui est de la base 2. On attend alors la limite des
quinze chiffres. Je pense que ta fonction réagit de la même façon, ou bien
elle fournit une chaîne texte.
Daniel
"JB" <boisgontier@hotmail.com> a écrit dans le message de news:
1190805666.376042.242650@y42g2000hsy.googlegroups.com...
Bonjour,
Ne fonctionne que pour les entiers <32768.
JB
On 26 sep, 12:28, "Daniel.C" <dZZZcolarde...@free.fr> wrote:
Bonjour.
MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum)
Dim quotient, remainder As Single
Dim answer As String
quotient = InputNum
remainder = InputNum
answer = ""
Do While quotient <> 0
remainder = quotient Mod BaseNum
quotient = Int(quotient / BaseNum)
answer = remainder & answer
Loop
baseconv = Val(answer)
End Function
Cordialement.
Daniel
"Versatile" <courrier.pe...@gmail.com> a écrit dans le message de news:
1190800089.056196.102...@o80g2000hse.googlegroups.com...
Bonjour,
Pour les pros de la programmation, comment convertir le plus
efficacement (le plus rapidement) un nombre de type LONG par exemple
(donc 32 bits) en son équivalent binaire 0011100..., bref en une
succession de 0 et 1 stockés dans une chaîne de caractère ?
Il doit bien y avoir un raccourci.
Merci beaucoup pour l'info.
Bonjour. Uniquement pour ce qui est de la base 2. On attend alors la limite des quinze chiffres. Je pense que ta fonction réagit de la même façon, ou bien elle fournit une chaîne texte. Daniel "JB" a écrit dans le message de news:
Bonjour,
Ne fonctionne que pour les entiers <32768.
JB On 26 sep, 12:28, "Daniel.C" wrote:
Bonjour. MS a mis en ligne cette fonction :
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
Cordialement. Daniel "Versatile" a écrit dans le message de news:
Bonjour, Pour les pros de la programmation, comment convertir le plus efficacement (le plus rapidement) un nombre de type LONG par exemple (donc 32 bits) en son équivalent binaire 0011100..., bref en une succession de 0 et 1 stockés dans une chaîne de caractère ? Il doit bien y avoir un raccourci. Merci beaucoup pour l'info.
Versatile
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function
cette fonction est assez géniale, merci beaucoup.
Function baseconv(InputNum, BaseNum)
Dim quotient, remainder As Single
Dim answer As String
quotient = InputNum
remainder = InputNum
answer = ""
Do While quotient <> 0
remainder = quotient Mod BaseNum
quotient = Int(quotient / BaseNum)
answer = remainder & answer
Loop
baseconv = Val(answer)
End Function
Function baseconv(InputNum, BaseNum) Dim quotient, remainder As Single Dim answer As String quotient = InputNum remainder = InputNum answer = "" Do While quotient <> 0 remainder = quotient Mod BaseNum quotient = Int(quotient / BaseNum) answer = remainder & answer Loop baseconv = Val(answer) End Function