Fout in VBA

Status
Niet open voor verdere reacties.

tonp60

Gebruiker
Lid geworden
29 jul 2009
Berichten
136
Hallo

Ik gebruik bijgevoegd script om een bestand te versturen en een afspraak in een agenda te plaatsen. Ik krijg error 2498 op de gemarkeerde regel.
Als ik deze regel "uitschakel" dan werkt het script verder wel. Alleen het bestand wordt dus niet verstuurd.
Wie kan mij helpen, zodat het wel werkt?
Script.jpg

Groet,
Ton
 
misschien moet je de regels omdraaien. je doet nu sendobject zonder dat er een object geopend is.
openreport
sendobject (het geopende rapport)
close (het geopende rapport)
 
@jwaque: SendObject werkt rechtstreeks, dus je hoeft een object (formulier, rapport) niet eerst te openen. Omdraaien van de regels doet dus helemaal niks.

Ik kan zelf niet bij een laptop deze week, dus ik kan het niet verifiëren, maar er zit volgens mij een fout in de manier waarop je het exporttype aangeeft (dat zou iets als acPDF moeten zijn). En dan werkt het natuurlijk nooit goed.
Vervolgens open je een rapport, en sluit je hem gelijk weer in de volgende regel. Wat is daar het nut van? Ook (in mijn ogen redelijk overbodig): waarom een ADO recordset gebruikt? De query die je gebruikt om het email adres op te halen, kun je net zo goed met CurrentDB.OpenRecordset(“query”) ophalen. Of met DLOOKUP.

Maar afgezien daarvan: je opent al een Outlook sessie om de afspraak te maken; waarom gebruik je diezelfde sessie dan niet om de mail te versturen?
 
Ik lees dit op de iPad en met een screenshot als voorbeeld is het lastig om een fout op te sporen.
De foutmelding betreft een verkeerde toewijzing van een variabele en mijn eerste gedachte is dat de aanhalingstekens tekens rond pdfformat wegmoeten. Het is in ieder geval iets om even te testen.

Zie verder ook de post van Octafish
 
Laatst bewerkt:
@leofact: de fout heeft niet te maken met de verkeerde toewijzing van een variabele, maar dus met het instellen van de correcte parameter. Dus de acFormatPDF. Die moet dan wel, als ik mij goed herinner, zonder quootjes. Maar dat geeft Access zelf ook aan, dus daar kun je eigenlijk geen fout mee maken.
Ik zou zelf dus het rapport eerst opslaan, en dan mailen via Outlook.
Code:
DoCmd.OutputTo acOutputReport, "rptFactuur", acFormatPDF, folder & "Factuur" & [FactuurnummerId] & ".pdf"
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan