Ecriture dans un fichier binaire
Bonjour à tous,
J'ai un problème avec l'instruction Put. J'ai un code qui me permet de créer un fichier binaire et d'écrire certaines données dessus dont des adresses hexa (sur 32 bits), en faisant des essais je me suis rendu compte que l'adresse FFFF_FFFF ne passait pas étant donné qu'il était déclaré en long.
adresse_val = CLng(hex_string_to_uint(Replace(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), "_", "")))
Put #1, , adresse_valDonc j'ai essayé de découper mon adresse en plusieurs morceaux afin de les faire rentrer dans un integer.
Voici mon bout de code
adresse_val1 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 1, 2))
Debug.Print ("adresse valeur1 :" & adresse_val1)
adresse_val2 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 3, 2))
Debug.Print ("adresse valeur2 :" & adresse_val2)
adresse_val3 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 6, 2))
Debug.Print ("adresse valeur3 :" & adresse_val3)
adresse_val4 = hex_string_to_uint(Mid(my_sheet.Cells(iloop_ligne, Low_ADDR_Column), 8, 2))
Debug.Print ("adresse valeur4 :" & adresse_val4)
Put #1, , adresse_val1
Put #1, , adresse_val2
Put #1, , adresse_val3
Put #1, , adresse_val4Ca ne fonctionne pas, au moment de l'écriture en binaire il écrit, je ne comprends pas pq j'ai 00 à l'adresse 1
Difficile de répondre avec un bout de code incomplet. Si vous ne souhaitez pas présenter le fichier complet, pourriez-vous isoler le code qui donne ce résultat dans une macro et nous la proposer ? Si on ne peut pas reproduire l'erreur, il est difficile de vous aider.