Bonjour le forum,
Je souhaite faire apparaître dans un USF un Gif animé pendant qu'une macro s'exécute en arrière plan.
J'ai utilisé le tuto de MichelXLD (2005) et de Silkroad (2007) avec les classeurs de démo.
J'ai donc importé mon Gif dans le classeur et il est codé sur la feuille "Image 3".
Je voudrai maintenant pouvoir l'utiliser dans un autre classeur. J'ai donc copier la feuille cachée "Image 3" dans le nouveau classeur et repris la partie de code de l'USF permettant l'affichage du Gif.
J'ai inhibé le ComboBox1.Value en lui attribuant directement la valeur "Image 3", mais je ne pense pas que se soit la solution puisque le WebBrowser reste désespérément blanc !
Savez-vous comment il faut modifier le code pour que l'affichage fonctionne ?
Je souhaite faire apparaître dans un USF un Gif animé pendant qu'une macro s'exécute en arrière plan.
J'ai utilisé le tuto de MichelXLD (2005) et de Silkroad (2007) avec les classeurs de démo.
J'ai donc importé mon Gif dans le classeur et il est codé sur la feuille "Image 3".
Je voudrai maintenant pouvoir l'utiliser dans un autre classeur. J'ai donc copier la feuille cachée "Image 3" dans le nouveau classeur et repris la partie de code de l'USF permettant l'affichage du Gif.
J'ai inhibé le ComboBox1.Value en lui attribuant directement la valeur "Image 3", mais je ne pense pas que se soit la solution puisque le WebBrowser reste désespérément blanc !
Savez-vous comment il faut modifier le code pour que l'affichage fonctionne ?
Code:
Private Sub ComboBox1_Change()
Dim S As String
Dim i As Long, F As Long
Dim j As Byte, b As Byte
Dim Hauteur As Long, Largeur As Long
'Vérifie qu'il y a bien un nom de choisi dans le ComboBox.
'If ComboBox1.Value = "" Then Exit Sub
ComboBox1.Value = "Image 3"
i = 1
'Définit le chemin de l'image qui va être créée.
S = "C:\imageTemp.gif"
'----- Création de l'image pour un affichage dans l'USF -----
F = FreeFile
Open S For Binary Access Write As F
Do
j = j + 1
If j = 21 Then
j = 1
i = i + 1
End If
b = ThisWorkbook.Sheets(ComboBox1.Value).Cells(i, j).Value
Put #F, , b
DoEvents
Loop While ThisWorkbook.Sheets(ComboBox1.Value).Cells(i, j).Value <> ""
Close F
'------------------------------------------------------------
'Définit les dimensions d'affichage de l'image dans le WebBrowser.
Largeur = WebBrowser1.Width * 96 / 72
Hauteur = WebBrowser1.Height * 96 / 72
'Affiche l'image dans le WebBrowser en supprimant les marges et les barres de défilement
WebBrowser1.Navigate _
"ABOUT:<HTML><CENTER><HEAD><body scroll='no' LEFTMARGIN=0 TOPMARGIN=0><IMG WIDTH=" & _
Largeur & " HEIGHT=" & Hauteur & _
" SRC='" & S & "'</IMG></BODY></CENTER></HTML>"
'Version pour afficher l'image à sa taille réelle:
'WebBrowser1.Navigate _
"ABOUT:<HTML><CENTER><HEAD><body scroll='no' LEFTMARGIN=0 TOPMARGIN=0><IMG " & _
" SRC='" & S & "'</IMG></BODY></CENTER></HTML>"
End Sub