OVH Cloud OVH Cloud

formulaire rendez vous personnalisé

5 réponses
Avatar
clochette
bonjour =E0 tous=20
voici ce que je souhaite faire : je voudrais dans mon=20
calendrier Outlook pouvoir utiliser un formulaire=20
personalis=E9 et me permettant d'utiliser un champ "dur=E9e du=20
rendez vous". Le but est ensuite d'exporter ces infos dans=20
Access ou Excel a des fins de calcul de temps.(ex :pour=20
telle cat=E9gorie de contact j'ai investi autant de temps=20
pour le mois de septembre). Tout ceci en local .
Pour info je travaille avec un outlook xp configur=E9 avec=20
un serveur exchange .

5 réponses

Avatar
JièL Goubert
Bonjour Clochette

clochette a écrit:
bonjour à tous
Le but est ensuite d'exporter ces infos dans
Access ou Excel a des fins de calcul de temps.


Mauvaise nouvelle, les champs personalisée ne s'exporte pas !!! solution
de chez MS : faire des copier/coller, je te jure que c'est LA solution
préconisé par MS

--
JièL / Jean-Louis GOUBERT
Co-auteur de "Internet + de 1 000 trucs de pros" chez Micro Application
http://faq.outlook.free.fr/livreMA/internet_plus_de_1000_trucs_de_pros.htm

Avatar
Anor
Bonjour

JièL Goubert a confié :
| Bonjour Clochette
|
| clochette a écrit:
|| bonjour à tous
|| Le but est ensuite d'exporter ces infos dans
|| Access ou Excel a des fins de calcul de temps.
|
| Mauvaise nouvelle, les champs personalisée ne s'exporte pas !!!
| solution de chez MS : faire des copier/coller, je te jure que c'est
| LA solution préconisé par MS


Je suis perplexe et si ces champs ne s'exportent pas, il s'importent peut-être ?
;-)
en les lisant avec la propriété suivante.

OlItems.ItemProperties("LeChampPersonnalisé")
ou si on préfère :
OlItems.ItemProperties!LeChampPersonnalisé

ça fonctionne pour les objects MailItem (mails, formulaires,...)
donc avec un peu de chance, les rendez-vous .....?

--
à+
Arnaud
--------------------------------------------------
Access Memorandum - http://memoaccess.free.fr
--------------------------------------------------
Avatar
clochette
bonjour a tous , et merci a tous les deux pour vos
réponses
Puis - je les résumer ainsi
-ce que je peux créeer comme champ dans un formulaire
personnalisé , je ne pourrais en récupérer les infos
récoltées par une simple exportation vers excel par ex
- la solution passe par le biais d'une procédure (VBA?)
mais qui ne semble pas évidente à écrire (j'utilise le VBA
dans excel mais n'ai jamais encore écrit de procédure
faisant intervenir plusieurs applications.)Est ce bien ca ?

Merci d'avance
Clochette





-----Message d'origine-----
Bonjour JièL


JièL Goubert a confié :
|
| Ben remonte toi les manches mon cher Anor ;-), car y'a
pas mal de

| demandes à ce sujet, et si tu met au point une
procédure, pense à la

| mettre sur ton site que je référencerai sur le mien
(quand il sera en

| état :-p)

Eh bien écoute :

Je suis rentré en mode design dans le formulaire rendez-
vous (appointments).

J'ai affiché la page 2 et rajouté un champ texte que j'ai
nommé MonChampPersonnalise,

puis publié ce form dans le dossier des formulaires
personnalisés.


Par rapport à la procédure de tests actuellement sur mon
site :

http://memoaccess.free.fr/outlook.htm#ReadAppointments

je n'ai fait que rajouter la dernière ligne :

MsgBox "Rendez-Vous : " & .Subject & vbCrLf _
& "ValeurPersonnalisée : "
& .ItemProperties!MonChampPersonnalise


La boite de dialogue m'affiche bien la valeur contenue
dans ce nouveau champ.


Bon je ne sais plus comment on fait pour remplacer le
formulaire par défaut par le nouveau

formulaire,
mais de toute façon, ce nouveau champ, si on rajoute sa
colonne correspondante, est valable pour

tous les RDV même ceux créés avec le formulaire d'origine,
on peut afficher sa valeur en rajoutant la colonne
correspondante et même du coup renseigner

cette valeur directement dans la liste des rdv.

La valeur personnalisée est alors lue par le code vba,
même si on ne développe pas un formulaire

de saisie spécifique.

En faisant des tests avec la propriété ItemProperties,
j'ai trouvé un peu par hasard la syntaxe à utiliser et
j'étais loin de penser

que cette syntaxe, je n'étais pas le seul à ne pas la
connaître ;-)))


..ItemProperties!MonChampPersonnalise
ou
..ItemProperties("MonChampPersonnalise")

--
à+
Arnaud
--------------------------------------------------
Conseils d'utilisation, sites recommandés :
http://users.skynet.be/mpfa/
Access Memorandum - http://memoaccess.free.fr
--------------------------------------------------


.



Avatar
JièL Goubert
Salut

JièL Goubert a écrit:
Salut Anor
pas moyen de remettre la main sur l'article, c'etait HM15 qui avait
trouvé cette note sur la KB... et j'avais répliqué que je trouvais cette
solution du copier/coller absolument horrible... quand j'aurais un
moment je la retrouverais...


Ayé, j'ai retrouvé l'article de MS sur la "solution" (si l'on peut dire)
sur les imports exports des champs perso dans les contacts
l'horreur est la http://support.microsoft.com/default.aspx?scid7654

Vivement que tu nous fasse un bouton pour que l'on clique dessus et que
tout se fasse automatiquement ;-)))
Au fait, tu pourrais peut-être le proposer à Bill, vu que ces
programmeurs ne sont pas capable de le faire ;-)

--
JièL / Jean-Louis GOUBERT
Co-auteur de "Internet + de 1 000 trucs de pros" chez Micro Application
http://faq.outlook.free.fr/livreMA/internet_plus_de_1000_trucs_de_pros.htm

Avatar
Anor
Bonjour

JièL Goubert a confié :

| Vivement que tu nous fasse un bouton pour que l'on clique dessus et
| que tout se fasse automatiquement ;-)))
| Au fait, tu pourrais peut-être le proposer à Bill, vu que ces
| programmeurs ne sont pas capable de le faire ;-)

y'a ka ;-))

Pas un bouton mais c'est presque pareil.
Je réponds sur l'exportation des rendez-vous puisque c'est le fil.
Pour les contacts, c'est sensiblement la même chose.

Dans Outlook2000 et + :
Appuyer sur Alt+F11 pour ouvrir la fenêtre Visual Basic Editor

Faire apparaître la fenêtre de "Code" en double-cliquant sur l'icone "ThisOutlookSession"

Y coller ceci :

'***** Début du code *****
Option Explicit

Sub ExportRDV(strFile As String, _
Optional Delim = """", _
Optional Separ = ",")

Dim OlApp As New Outlook.Application
Dim OlMapi As Outlook.NameSpace
Dim OlFolder As Outlook.MAPIFolder
Dim OlItems As Outlook.Items
Dim OlAppointment As Outlook.AppointmentItem
Dim OlPrp As Outlook.ItemProperty

Dim txtLine As String
Dim Fichier As Integer

Set OlMapi = OlApp.GetNamespace("MAPI")
Set OlFolder = OlMapi.GetDefaultFolder(olFolderCalendar)
Set OlItems = OlFolder.Items
Set OlAppointment = OlItems.Item(1)

Fichier = FreeFile()

Open strFile For Output As #Fichier

For Each OlPrp In OlAppointment.ItemProperties
If OlPrp.Type = olDateTime Or OlPrp.Type = olText Then
txtLine = txtLine & Delim & OlPrp.Name & Delim & Separ
End If
Next OlPrp
txtLine = Left(txtLine, Len(txtLine) - Len(Separ))
Print #Fichier, txtLine
txtLine = ""

For Each OlAppointment In OlItems
For Each OlPrp In OlAppointment.ItemProperties
If OlPrp.Type = olDateTime Or OlPrp.Type = olText Then
txtLine = txtLine & Delim & OlPrp.Value & Delim & Separ
End If
Next OlPrp
txtLine = Left(txtLine, Len(txtLine) - Len(Separ))
Print #Fichier, txtLine
txtLine = ""
Next OlAppointment

Close #Fichier

MsgBox "Fichier " & strFile & " créé.", vbOKOnly, ""

Set OlPrp = Nothing
Set OlAppointment = Nothing
Set OlItems = Nothing
Set OlFolder = Nothing
Set OlMapi = Nothing
Set OlApp = Nothing

End Sub

Sub ExportRdvTXT()
'Format TXT tabulé
Call ExportRDV("C:Mes DocumentsContacts.txt", Null, vbTab)
End Sub

Sub ExportRdvCSV()
'Format CSV
Call ExportRDV("C:Mes DocumentsContacts.csv")
End Sub

'***** Fin du code *****

Attention au chemin "C:Mes Documents" qui doit être valide !!
Le modifier si besoin est.

Voilà c'est tout : un petit coup de menu Debug > Compile
et de disquette pour sauvegarder le code dans le fichier VbaProject.OTM

On peut fermer cette fenêtre et désormais,
on choisira par le menu Outils > Macro > Macros
d'exécuter ExportRdvCSV ou ExportRdvTXT (selon le format de fichier souhaité).

Je n'ai pas testé avec des champs personnalisés, mais je suis confiant
car ça marchait avec les contacts ;-))

Espérant avoir aidé,

Je publierai ce code et celui pour exporter les contacts sur mon site lorsque j'aurai eu
quelques retours et avis.
--
à+
Arnaud
--------------------------------------------------
Access Memorandum - http://memoaccess.free.fr
--------------------------------------------------