• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Access rapport of macro starten vanuit een Excel macro

Status
Niet open voor verdere reacties.

Gert Bouwmeeste

Verenigingslid
Lid geworden
28 nov 2007
Berichten
827
Ik wil graag vanuit een Excel macro een Access rapport starten. Of nog liever een Acces-macro die het rapport automatisch uitprint. Weet iemand of dat kan en hoe dat moet?

Veel dank alvast!
 
Je moet in Excel even een verwijzing instellen (in VBA gedeelte: Extra/verwijzing) naar de Microsoft Access xx Object Library. Vervolgens kun je de volgende code toevoegen:

Code:
 Dim objAccess As new Access.Application
  objAccess.Visible=true
  objAccess.DoCmd.OpenReport "Rapport"

Je kunt ook kiezen voor late binding, maar dan werkt je intellisense niet (ik gebruik meestal methode 1, totdat alles werkt, en schakel dan over naar late binding

Code:
 Dim objAccess As object
 set objAccess = CreateObject("Access.Application")
  objAccess.Visible=true
  objAccess.DoCmd.OpenReport "Rapport"
 
Het werkt nog niet helemaal

Het werkt nog niet helemaal.

Ik heb de verbinding gelegd en de naam van mijn rapport ingevuld op de plek van "Rapport".

MS Access start wel, maar zonder database of rapport en met een foutmelding in de Excel macro "Fout 2486 tijdens uitvoering. U kunt deze actie momenteel niet uitvoeren".

Nog een idee?
 
Kun je 'm even (gestript) posten? Je mag 'm anders ook emailen hoor
 
Voorbeeldbestanden

Hoi,

Hierbij de voorbeeldbestanden. De Excelmacro moet het rapport "Straten" in het Acessbestandbestand TEST.MDB oproepen wat in de map "C:\DATA" staat.

Ik heb het gevoel dat er iets niet goed is aan de verwijzing naar de database of naar het rapport.

Ik heb ook al geprobeerd om een snelkoppeling naar het rapport op het bureraublad te plaatsen. Dat lukt wel en werkt ook, maar vanuit de excel macro daarnaar verwijzen lukt niet.

Dank alvast voor de moeite!
 

Bijlagen

Bij deze code, sorry, ik was je even vergeten te vertellen dat je de database uiteraard nog even moet linken:

Code:
Sub NaarAccess()
 Dim objAccess As New Access.Application
  objAccess.Visible = True
  objAccess.OpenCurrentDatabase "c:\data\test.mdb"
  'als je het rapport eerst wilt bekijken:
  'objAccess.DoCmd.OpenReport "Stratenlijst", acViewPreview
  'en alsje 'm meteen wilt printen:
  objAccess.DoCmd.OpenReport "Stratenlijst"

  'als je deze code uitvoert wordt de database weer gesloten
  'da's dus niet zo handig als je een preview doet..
  'objAccess.CloseCurrentDatabase
  set objAccess = nothing
End Sub
 
Bedankt!

Bedankt: Ik heb de code ingouwd en het werkt als een tierelier, Geweldig!
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan