Bonjour,
je souhaite envoyé en automatique certains rapports le problème est que send object envoie l'ensemble des états.
est il possible d'envoyer uniquement le rapport filtré?
merci.
Bonjour,
je souhaite envoyé en automatique certains rapports le problème est que send object envoie l'ensemble des états.
est il possible d'envoyer uniquement le rapport filtré?
merci.
Bonjour,
J'ai le même pb et il semble qu'il n'y ait pas de réponse.
J'avais pensé avoir trouvé une piste dans un post de 2004ce qui laisserait supposer qu'on peut envoyer un rapport filtré.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 stDocName = "etat1" DoCmd.SendObject acReport, stDocName, , "id_projet = " & Me.id_projet
Mais en utilisant ce code, ce sont tous les rapports qui sont envoyés.
On en est donc au même point, mort.
J'ai essayé de passer avant par un SelectObjet, sans succès.
Ne faudrait-il pas d'abord exporter le rapport sous forme de fichier, puis envoyer ce fichier ?
Je vais essayer.
Amitiés
Bonsoir,
Les méthodes OutPutTo et SendObject, si on ne donne pas de nom d'objet (seulement acOutPutReport ou acSendReport) à envoyer, utilisent l'objet actif.
Donc, j'ouvre le report en PreView, puis j'utilise la méthode ad-hoc et j'obtiens dans le cas de OutPutTo le fichier à l'emplacement demandé et dans le cas de SendReport, la création d'un msg dans ma messagerie (Eudora7) et le fichier se place dans le répertoire des pièces attachées.
Dans l'aide d'Access2000, il y a un exemple de code à la rubrique "exemple de méthodes OutPutTo et Sendobject" (avec une faute d'orthographe dans le nom d'une variable chFormatSortie à un endroit et chrFormatSortie plus loin)
Un petit bout de codePour moi ç'est résolu, mais je ne comprends pas pourquoi SendObject ne permet pas de filtrer, et se contente de prendre l'objet actif.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 DoCmd.OpenReport stDocName, acViewPreview, , "[N° de saisie]=83" Call OutputSnapshotFile(1, "", "c:\cgc\report.snp") Public Sub OutputSnapshotFile(intOutputTO As Integer, _ chNom As String, Optional chChemin As String, _ Optional chNomDest As String) DoCmd.Hourglass True chFormatSortie = acFormatSNP '"Format Snapshot" Select Case intOutputTO Case conSaveSnapshotToDisk If Len(chChemin) > 0 Then DoCmd.OutputTo acOutputReport, , _ chFormatSortie, chChemin Else DoCmd.Hourglass False Exit Sub End If Case conSaveSnapshotToMail If Len(chNomDest) > 0 Then DoCmd.SendObject acSendReport, _ chNom, chFormatSortie, chNomDest Else DoCmd.Hourglass False Exit Sub End If Case Else End Select DoCmd.Hourglass False End Sub
J'ai utilisé le format SNAPSHOT car c'est celui qui conserve au report son aspect original (comme PDF).
Amitiés
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager