Comme c'est sympa la vitesse à laquelle vous m'avez répondu. Comme vous me l'avez demandé voici le code que j'ai écrit(soyez indulgent si c'est n'importe quoi en fait c'est une mission ponctuelle je ne programme pas en VB en principe):
// Macro lisant le fichier et appellant la fonction de conversion des octets
Private Sub Conversion()
Dim f As Integer
Dim ligne As Byte
Dim test As String
f = FreeFile
Open "C:\VBACyril\fich1.ogf" For Input As #f
While Not EOF(f)
test = CStr(ligne)
Line Input #f, test1
Debug.Print "le string : " & test
nombre = BinaryToDecimal(test, 32, True)
Debug.Print "conversion : " & nombre
Wend
Close #f
End Sub
// Voici la fonction de conversion
Public Function BinaryToDecimal(Binary As String, NbBits As Byte, Signed As Boolean) As Long
Dim i As Byte
BinaryToDecimal = 0
If NbBits <= 1 Or NbBits > 32 Then Exit Function
If Len(Binary) > NbBits Or Len(Binary) > 32 Then Exit Function
Binary = Right("00000000000000000000000000000000" & Binary, NbBits)
If Signed = False Then
For i = 0 To Len(Binary) - 1
BinaryToDecimal = BinaryToDecimal + Val(Mid(Binary, Len(Binary) - i, 1)) * 2 ^ i
Next
Else
For i = 0 To Len(Binary) - 2
BinaryToDecimal = BinaryToDecimal + Val(Mid(Binary, Len(Binary) - i, 1)) * 2 ^ i
Next i
If Left(Binary, 1) = "1" Then
BinaryToDecimal = -((2 ^ (NbBits - 1)) - BinaryToDecimal)
End If
End If
End Function