Bonsoir,
j'ai trouvé cela pour toi :
Private Function Inverser(ByVal strChaine As System.String)
Dim intI As System.Int32
Dim strS As System.String
For intI = strChaine.Length - 1 To 0 Step -1
strS &= strChaine.Substring(intI, 1)
Next
lblResult.Text = strS
End Function
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim intNombre, intBase, intReste, intQuotient As System.Int32
intNombre = CInt(txtNombre.Text)
intBase = CInt(txtBase.Text)
intQuotient = 1
lblResult.Text = ""
' Tant que le quotient est différent de 0, le reste est affecté à chaque position du nombre converti
Do While intQuotient <> 0
intQuotient = intNombre \ intBase
intReste = intNombre Mod intBase
intNombre = intQuotient
' Si le reste > 9 ( code hexadécimal et plus ), une lettre est affecté au chiffre
If intReste > 9 Then
lblResult.Text &= Chr(intReste + 55)
Else
lblResult.Text &= intReste
End If
Loop
' On inverse la chaine puisque l'algorithme donne le nombre converti à l'envers
Inverser(lblResult.Text)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim intNombre1, intBase1, intResult, intJ As System.Int32
intBase1 = CInt(txtBase1.Text)
' Convertit le nombre en base X en un nombre décimal
For intJ = 0 To txtNombre1.Text.Length - 1 Step 1
If Char.IsLetter(txtNombre1.Text.Substring((txtNombre1.Text.Length - 1 - intJ), 1)) Then
'Si il y a une lettre, on convertit en son chiffre décimal
'On prend la chaîne à l'envers puisque l'ordre des puissances est inversée
'par rapport à la chaîne de caractères
intResult += (Asc(txtNombre1.Text.Substring((txtNombre1.Text.Length - 1 - intJ), 1)) - 55) * intBase1 ^ intJ
Else
intResult += txtNombre1.Text.Substring((txtNombre1.Text.Length - 1 - intJ), 1) * intBase1 ^ intJ
End If
Next
lblResult1.Text = intResult
End Sub
sur copernic agent en demandant : "base 7" vba