Wat is hier fout

Status
Niet open voor verdere reacties.

BartSr

Gebruiker
Lid geworden
26 aug 2008
Berichten
240
Ik wilde een reeks bestanden printen middels deze code
For Each varFile In .SelectedItems
DoCmd.OpenReport varFile
, waarbij varfile de naam 1.txt bevat (om het even simpel te houden. De werkelijke naam is veel langer en bevat letters)

Maar dat gaat fout. Met deze melding De rapportnaam ....die u hebt ingevoerd in het eigenschappenvenster of de macro is onjuist gespeld, of verwijst naar een niet bestaand rapport
 
varFile moet de naam van een binnen Access gedefinieerd rapport(ontwerp) bevatten. Dat lijkt niet het geval te zijn.
 
XPS351,>
Met welk commando druk ik dan een reeks tekstbestanden af?
bart
 
Mag alleen Peter antwoord geven? Dan wacht ik gewoon even af :). Overigens kun je best een reeks bestanden (ik neem aan dat je daar rapporten mee bedoeld? afdrukken. Moet je wél de naam van die rapporten op een logische manier uitlezen. Als je alle rapporten wilt afdrukken, kun je bijvoorbeeld een query maken op basis van de tabel MSysObjects en die filteren op rapporten. Dat ziet er zo uit:
Code:
SELECT Name FROM MSysObjects WHERE Type=-32764

Dan krijg je keurig een lijst met de rapporten, waar je dan met een loop doorheen kunt lopen. Om maar eens een oplossing te geven. Overigens geef je in jouw code niet aan hoe je varFile vult; die SelectedItems moet toch érgens vandaan komen?
 
ik hoop dat dit het antwoord is waar Bart op zit te wachten :). Als je in de varFile alleen de bestandsnaam hebt zitten, gaat het ook echt wel fout. Je moet lijkt mij óók het pad aan/mee geven.

Mij lijkt het veel handiger om het rapport te openen/af te drukken, geen los exportbestand. Sowieso heeft een txt bestand geen fatsoenlijke opmaak, dus het ziet er al niet uit. Als je de data vanuit een tabel exporteert (en hoe kom je anders aan de data?), is het net zo makkelijk om er een net rapport van te maken, en dát af te drukken.
 
Om een bestand af te drukken gebruik je
Code:
Application.FilePrint varFile
Dit werkt ook niet. Bij het compileren wordt deze melding gegeven kan de methode of het gegevenlid niet vinden. Moet er misschien onder Extra-Verwijzingeniets worden ingeschakeld?
 
Leg eerst eens uit wat je nu wilt; ik heb nog steeds de indruk dat je naar een oplossing kijkt waar je niets aan hebt. Of die nou werkt of niet :).
 
Dit werkt ook niet.
Sorry. Ik heb dit ongetest in de groep gezet, en dat moet je dus nooit doen :o. Ik krijg het inderdaad ook niet werkend.
Deze doet het (bij mij) wel:
Code:
Shell "notepad.exe /P " & varFile
 
Shell "notepad.exe /P " & varFile werkt niet, althans het drukt niet af
/P zal vermoedelijk moeten worden vervangen door [ctrl] + P, maar hoe doe je dat?
 
Laatst bewerkt:
Ik heb het echt getest en bij mij werkt het. Ik weet even geen andere oplossing.
 
Staat in je variabele wel het volledige pad? (Heb ik al in #6 gememoreerd)
 
Sorry. Ik heb dit ongetest in de groep gezet, en dat moet je dus nooit doen :o. Ik krijg het inderdaad ook niet werkend.
Deze doet het (bij mij) wel:
Code:
Shell "notepad.exe /P " & varFile
Peter,
sorry mijn fout, een probleempje met de printer.Het werkt nu ,
maar het resultaat is erg mager. Ik stel nu een nieuw item voor onder de titel "hoe druk ik in Access een pdf-bestand"
 
En ik blijf zeggen: output vanuit Access moet je vanuit een rapport afdrukken, nergens anders. Exportproducten als txt bestanden en pdf bestanden zijn leuk om naar de klant op te sturen, maar nooit om Access output af te drukken. Waarom zou je ook? Je hebt de juiste opmaak al gemaakt (als het goed is) in Access. En anders heb je nog wat klusjes liggen :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan