GNT sans publicité, site mobile, fonctionnalitées exclusives...

Afficher une image via une sub

Le
simulacre25 Hors ligne
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.
Lire les 7 réponses

Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
MichD
Le #24192261
Bonjour,

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.
isabelle
Le #24192251
bonjour,

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 :
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.
simulacre25 Hors ligne
Le #24192571
isabelle a écrit le 24/01/2012 à 15h20 :
bonjour,

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 :
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.




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.
isabelle
Le #24193131
je ne sais pas comment est organisé ton fichier,
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 :

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.
simulacre25 Hors ligne
Le #24194701
isabelle a écrit le 24/01/2012 à 20h59 :
je ne sais pas comment est organisé ton fichier,
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 :

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.




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
Publicité
Suivre les réponses
Poster une réponse
Anonyme