Link to home
Start Free TrialLog in
Avatar of Scamquist
ScamquistFlag for United States of America

asked on

Schedule WIndows 7 Task to run Access 2010 Macro

I am trying to run an Access 2010 module as a daily Scheduled Task on a Windows 7 Professional operating system.
This will run at night when my computer is logged off.  

I have the Action: Start a program
Settings
Program/script: "C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE"


Add Arguments (optional): "C:\Scripts\DailyReports.accdb" /x mcrEmailPOlines

Start in (optional): blank

I have this set to run whether user is logged on or not and to run with the highest privilages.  
It is configured for WIndows 7 and WIndows SErver 2008R2

It looks like the task kicks off, but the follow message shows for the Last Run Result

The task is currently running.  (0x41301)

This status will not change.  I eventually end the run.

After it tries to run, when I open Access, I get the message:
Access failed to start correctly last time.  Starting Access in safe mode will help you correct or isolate a startup porblem in order to successfully start the program.  SOme functionality may be disabled in this mode.   Do you want to start Access in safe mode.

I even tried to run a batch file to kick off the macro from Task Scheduler with similar results.  Double clicking the batch file works fine.  I just hang in Task Scheduler.

Any thoughts?
Avatar of Run5k
Run5k
Flag of United States of America image

Try configuring the task to run with the built-in local System account.  That way, you can ensure it runs with the highest level of privileges.
This is the issue with trying to run Access database "unattended"

Any number of things can go wrong, so you *Must* have iron-clad Error handling and Roll-Backs in place in case something does.

In your case it may just be that the locking file: (.ldb, or .laccdb) was not deleted.
Back up the database first.
Then try locating this file when the DB is closed, ...if it exists, then delete it.
...Also make sure you open the DB manually every once in a while to do a Compact/Repair and compile the code ...

JeffCoachman
Does your Access macro include a command to close the database when it is complete?
Avatar of Scamquist

ASKER

Sorry for the delay in replying.  
Run5K - tried as system - no difference.

Borag2000 - no locking file open

mbizup - the macro calles a function to email a spreadsheet.  The last command is to quit the application.

Still not working.  Trying to call a batch file to do the same thing.

Task Scheduler
Program/script:    cmd
Add Argurment: /c start "" "C:\Scripts\ExportPOLines.bat"

batch file contains:
@echo off
"C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE" "C:\Scripts\DailyReports.accdb" /x mcrEmailPOlines

Ran first time but not next.  Still playing.
ASKER CERTIFIED SOLUTION
Avatar of Jeffrey Coachman
Jeffrey Coachman
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Thank you for the assist
This answer does not work for me. My process still does not run. I also have an ODBC connection in my Access database. Could that be causing a problem and if so, what do I need to do?
Have run into this same issue.  Command line execution of an Access macro fires with no issue and closes Access.  However, set this up in the Windows Task Scheduler and the Task Scheduler seems to hang until it times out at a predetermined limit of 2 hours.  Seems that there is an issue in Windows 7 Task Scheduler executing Access macros.  

Has anyone found a resolution to this problem?