Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Photo sur formulaire personalisé

2 réponses
Avatar
philippe
Bonjour,

Voici je supposes un serpent de mer.
Le contrôle photo d'outlook 2003 ne peut pas être utilisé à partir du moment
où on customise le formulaire (en tous cas la page où il se trouve).
Mon problème est que j'ai besoin d'un formulaire contact customisé, avec une
photo. Sue Mosher (MVP) propose sur son site une méthode utilisant un
contrôle image. Elle charge controls("MonControlImage").Load à l'ouverture.
Seulement les utilisateurs ont un prompt dialog pour sauver l'item à la
fermeture.
Je voudrais me débarasser de ce prompt : un équivalent
d'Application.DisplayAlerts = false dans Excel... mais je ne trouve pas (on
est en VBScript du reste). Ou encore utiliser SendKeys : mais je ne sais pas
si ça marche dans VBS Outlook, ni comment l'utiliser pour répondre non à
Oui|Non|Annuler.

Evidemment j'aimerai encore mieux pouvoir incorporer la photo dans
l'élément, de sorte que les utilisateurs off line puisse la voir (la méthode
load implique que de charger l'image à chaque ouverture du form).
Je pense que ça ne devrait pas être impossible puisqu'on peut sauver des
images dans le controle "notes" d'une fiche contact. Mais je n'en suis pas
sur, et surtout je ne sais pas comment m'y prendre... je suis un débutant en
VB.

Merci déjà de m'avoir lu jusque là.
Si vous avez des idées elles seront les bienvenues,
Cordialement,
Philippe

2 réponses

Avatar
Laurent Francfort [MS]
Bonjour,

Je n'ai pas vu l'article de Sue (et je suis intéressé si tu peux me fournir
le lien), mais globalement :
1> Si l'image est chargée dans un contrôle d'interface qui n'est pas lié à
une propriété de l'élément, le formulaire ne te demandera pas si tu veux
sauvegarder ou pas.
2> Dans l'événement item_close, tu peux intervenir et forcer un
enregistrement ou au contraire un non enregistrement de l'élément. Ca
donnerait un code de ce genre dans le script du formulaire Outlook :
Function Item_Close()

Item.Close(olDiscard)

End Function


Laurent


"philippe" a écrit dans le message de
news:
Bonjour,

Voici je supposes un serpent de mer.
Le contrôle photo d'outlook 2003 ne peut pas être utilisé à partir du
moment
où on customise le formulaire (en tous cas la page où il se trouve).
Mon problème est que j'ai besoin d'un formulaire contact customisé, avec
une
photo. Sue Mosher (MVP) propose sur son site une méthode utilisant un
contrôle image. Elle charge controls("MonControlImage").Load à
l'ouverture.
Seulement les utilisateurs ont un prompt dialog pour sauver l'item à la
fermeture.
Je voudrais me débarasser de ce prompt : un équivalent
d'Application.DisplayAlerts = false dans Excel... mais je ne trouve pas
(on
est en VBScript du reste). Ou encore utiliser SendKeys : mais je ne sais
pas
si ça marche dans VBS Outlook, ni comment l'utiliser pour répondre non à
Oui|Non|Annuler.

Evidemment j'aimerai encore mieux pouvoir incorporer la photo dans
l'élément, de sorte que les utilisateurs off line puisse la voir (la
méthode
load implique que de charger l'image à chaque ouverture du form).
Je pense que ça ne devrait pas être impossible puisqu'on peut sauver des
images dans le controle "notes" d'une fiche contact. Mais je n'en suis pas
sur, et surtout je ne sais pas comment m'y prendre... je suis un débutant
en
VB.

Merci déjà de m'avoir lu jusque là.
Si vous avez des idées elles seront les bienvenues,
Cordialement,
Philippe


Avatar
philippe
Merci infiniment,
(je plaisante pas)

point 2 : résoud l'essentiel de mon problème : c'est pas optimum, mais
suffisamment opérationnel
point 1 : bizarrement ça ne semble pas être vrai.
En fait j'utilise le code ci-dessous : normalement (et malheureusement) ça
ne modifie pas de propriété de l'item : si je ferme et je rouvre Outlook, la
photo n'est plus là (j'ai essayé en exécutant en VBA plutôt qu'à l'ouverture
du formulaire en VBS).

Voici le code de Sue : http://www.outlookcode.com/d/formpicture.htm#control
Function Item_Open()
Set objInsp = Item.GetInspector
Set objPage = objInsp.ModifiedFormPages("Général")
Set imgPicture = objPage.Controls("Image4")
If Item.BillingInformation <> "" Then
imgPicture.Picture = _
LoadPicture(Item.BillingInformation)
End If
End Function


"Laurent Francfort [MS]" a écrit :

Bonjour,

Je n'ai pas vu l'article de Sue (et je suis intéressé si tu peux me fournir
le lien), mais globalement :
1> Si l'image est chargée dans un contrôle d'interface qui n'est pas lié à
une propriété de l'élément, le formulaire ne te demandera pas si tu veux
sauvegarder ou pas.
2> Dans l'événement item_close, tu peux intervenir et forcer un
enregistrement ou au contraire un non enregistrement de l'élément. Ca
donnerait un code de ce genre dans le script du formulaire Outlook :
Function Item_Close()

Item.Close(olDiscard)

End Function


Laurent


"philippe" a écrit dans le message de
news:
> Bonjour,
>
> Voici je supposes un serpent de mer.
> Le contrôle photo d'outlook 2003 ne peut pas être utilisé à partir du
> moment
> où on customise le formulaire (en tous cas la page où il se trouve).
> Mon problème est que j'ai besoin d'un formulaire contact customisé, avec
> une
> photo. Sue Mosher (MVP) propose sur son site une méthode utilisant un
> contrôle image. Elle charge controls("MonControlImage").Load à
> l'ouverture.
> Seulement les utilisateurs ont un prompt dialog pour sauver l'item à la
> fermeture.
> Je voudrais me débarasser de ce prompt : un équivalent
> d'Application.DisplayAlerts = false dans Excel... mais je ne trouve pas
> (on
> est en VBScript du reste). Ou encore utiliser SendKeys : mais je ne sais
> pas
> si ça marche dans VBS Outlook, ni comment l'utiliser pour répondre non à
> Oui|Non|Annuler.
>
> Evidemment j'aimerai encore mieux pouvoir incorporer la photo dans
> l'élément, de sorte que les utilisateurs off line puisse la voir (la
> méthode
> load implique que de charger l'image à chaque ouverture du form).
> Je pense que ça ne devrait pas être impossible puisqu'on peut sauver des
> images dans le controle "notes" d'une fiche contact. Mais je n'en suis pas
> sur, et surtout je ne sais pas comment m'y prendre... je suis un débutant
> en
> VB.
>
> Merci déjà de m'avoir lu jusque là.
> Si vous avez des idées elles seront les bienvenues,
> Cordialement,
> Philippe