Bonjour a tous
je reprends le userform de Silkyroad "enregistrer en binaire une image dans le classeur"
il utilise l'object "Scripting file system object"
je voudrais accélérer la cadence avec adob Stream
visiblement ca fonctionne mais a moitié seulement
quelqu'un aurais une idée???
en effet je n'arrive a récupérer exactement la moitié seulement des bits
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Sub readBytes() Dim inStream, BB, tablo(65536, 21) Dim fileToOpen fileToOpen = Application.GetOpenFilename("Fichiers Images (*.jpg;*.gif;*.bmp;*.png;*.jpeg),(*.jpg;*.gif;*.bmp;*.png;.jpeg)") If fileToOpen = False Then Exit Sub ' ADODB stream object used Set inStream = CreateObject("ADODB.Stream") ' open with no arguments makes the stream an empty container inStream.Open inStream.Type = 1 inStream.LoadFromFile (fileToOpen) BB = inStream.Read() For b = 0 To 1000000 On Error Resume Next j = j + 1 If j = 21 Then j = 1 i = i + 1 End If tablo(i - 1, j - 1) = BB(b) Next Err.Clear Sheets("test.jpg").Cells(1, 1).Resize(65536, 21) = tablo End Sub
Partager