2009-03-18 18 views

Répondre

4

Vous devez l'ouvrir en utilisant "Accès binaire".

Voir http://www.vbforums.com/showthread.php?t=430424

Sub Temp() 
    Dim intFileNum%, bytTemp As Byte, intCellRow% 
    intFileNum = FreeFile 
    intCellRow = 0 
    Open "C:\temp.bin" For Binary Access Read As intFileNum 
    Do While Not EOF(intFileNum) 
     intCellRow = intCellRow + 1 
     Get intFileNum, , bytTemp 
     Cells(intCellRow, 1) = bytTemp 
    Loop 
    Close intFileNum 
End Sub 
5

Une autre façon utilise ADODB.Stream:

With CreateObject("ADODB.Stream") 
    .Open 
    .Type = 1 ' adTypeBinary 
    .LoadFromFile file.Path 
    bytes = .Read 
    .Close 
End With 

(Désolé, je ne suis pas vraiment sûr de ce que la bibliothèque est dans, ce qui explique pourquoi ce code exemple utilise CreateObject et la valeur littérale 1 au lieu de la constante nommée adTypeBinary!)

+0

La bibliothèque est Microsoft Active Data Object. –

Questions connexes