Afficher une image via une sub
Le
Bonjour,
Je souhaiterais savoir s'il est possible d'afficher une image contenue dans une feuille d'un classeur au sein d'une procédure sans passer par l'affichage d'un formulaire. Afficher l'image puis la faire disparaitre lorsque la procédure est terminée. Je n'utilise qu'une image très légère et je ne souhaite pas aller la chercher dans le répertoire mais l'appeler dans le classeur-même.
C'est un gif animé style "Veuillez patienter". Question : les gif animés fonctionnent-ils dans Excel ?
Merci pour vos réponses.
Je souhaiterais savoir s'il est possible d'afficher une image contenue dans une feuille d'un classeur au sein d'une procédure sans passer par l'affichage d'un formulaire. Afficher l'image puis la faire disparaitre lorsque la procédure est terminée. Je n'utilise qu'une image très légère et je ne souhaite pas aller la chercher dans le répertoire mais l'appeler dans le classeur-même.
C'est un gif animé style "Veuillez patienter". Question : les gif animés fonctionnent-ils dans Excel ?
Merci pour vos réponses.

Poser une question


As-tu essayé d'insérer ton image directement dans une feuille de calcul et
de jouer avec la propriété "Visible" pour l'afficher ou la masquer selon les
circonstances?
MichD
------------------------------------------
"simulacre25" a écrit dans le message de groupe de discussion :
Bonjour,
Je souhaiterais savoir s'il est possible d'afficher une image contenue dans une
feuille d'un classeur au sein d'une procédure sans passer par l'affichage d'un
formulaire. Afficher l'image puis la faire disparaitre lorsque la procédure est
terminée. Je n'utilise qu'une image très légère et je ne souhaite pas aller la
chercher dans le répertoire mais l'appeler dans le classeur-même.
C'est un gif animé style "Veuillez patienter...". Question : les gif animés
fonctionnent-ils dans Excel ?
Merci pour vos réponses.
met un control "Microsoft WebBrowser" sur la feuille
et utilise le code suivant pour charger l'image
'Sets the image path - Définit le chemin de l'image
S = "C:imageTemp.gif"
'Defines the size of image display in the WebBrowser.
'Définit les dimensions d'affichage de l'image dans le WebBrowser.
w = ActiveSheet.WebBrowser1.Width * 96 / 72
h = ActiveSheet.WebBrowser1.Height * 96 / 72
'Displays the image in the WebBrowser then remove margins and scrollbars
'Affiche l'image dans le WebBrowser en supprimant les marges et les barres de défilement
ActiveSheet.WebBrowser1.Navigate _
"ABOUT:<HTML><CENTER><HEAD><body scroll='no' LEFTMARGIN=0 TOPMARGIN=0><IMG WIDTH=" & _
w & " HEIGHT=" & h & " SRC='" & S & "'</IMG></BODY></CENTER></HTML>"
tu pourras l'afficher ou le masquer avec la commande suivante
ActiveSheet.WebBrowser1.Visible = True 'Or False
--
isabelle
Le 2012-01-24 08:12, simulacre25 a écrit :
Merci pour vos réponses.
Vu que la procédure se lance à partir d'un formulaire, je suppose que je dois le décharger durant la procédure afin de voir le web Browser sur ma feuille.
Par contre, je ne vois pas où mettre ta procédure Isabelle. Si je la mets dans un module et que je l'appelle dans ma sub, alors il bloque sur une erreur Objet requis.
mais dans la question initial tu disais :
"sans passer par l'affichage d'un formulaire"
peut tu mettre ton fichier sur cjoint.com et expliquer comment tu veut ça ?
--
isabelle
Le 2012-01-24 12:01, simulacre25 a écrit :
Je progresse (affichage d'un texte dans web browser plutôt qu'une image) mais je bute désormais sur un épineux problème. J'affiche désormais correctement le web browser mais au milieu de ma procédure, je suis obligé de positionner un screenupdating à false qui bloque l'affiche dynamique de mon web browser qui est figé (forcément). Un moyen de contourner cela ?
sub ()
Unload UserForm_Accueil
ActiveSheet.WebBrowser1.Visible = True
'----------- message pendant le transfert ----
'Permet de créer un message d'attente défilant dans le WebBrowser pendant le transfert
'des données (au format binaire) dans les cellules de la nouvelle feuille.
Dim LeTexte As String
Dim LaCouleur As String
LeTexte = "Veuillez patienter... traitement en cours ..."
LaCouleur = "#CC0000"
ActiveSheet.WebBrowser1.Navigate _
"about:<html><body BGCOLOR ='#CCCCCC' scroll='no'><font color= " & LaCouleur & _
" size='5' face='Arial'>" & _
"<marquee>" & LeTexte & "</marquee></font></body></html>"
Application.ScreenUpdating = False
Call Ajout_Formules_BD
Sheets("accueil").Select
ActiveSheet.WebBrowser1.Visible = False
Message = MsgBox("Les données ont été correctement importées.", vbInformation, "Bravo !")
Application.ScreenUpdating = True
Load UserForm_Accueil
UserForm_Accueil.Show
End Sub