Running A Batch File From Command Prompt Using VBA
Apr 25, 2008
Hi,
I know this can be done but I'm a novice at VBA. I have a batch file AutoLoop.bat which I run from command prompt at the moment. The idea is to run a VBA routine behind the onClick event of a command button in Access which would run this batch file in command prompt automatically. Say if the batch file path is I:AUTOGENLOOPGENAutoLoop.bat,
what VBA code can be used.
I am creating a batch in an Access Query to decompress files that come in from an FTP site. When I right click on the query and export it to a TXT file I get all the line items of the that I want without the header of the query field name. When I run the following command;
(Where "Decompress2 Specification" is the name of the Spec)
I get the name of the field as the first line item and then all the line items I am looking for. I use the same Spec when I manually run it or when I run it from the code. how I can get rid of the first line item when I run it from the code?
I run a batch file to change the txt extension to bat.
hello everyone, i really need some detailed help as the deadline is approaching and I need to find a solution for this. Any help would be greatly appreciated
I currently have a batch file that ftps a text file from a Red Hat Linux Server to my W2k C:. I would like to make another command in the batch file that imports this text file into an existing access table. I would like the text file to repopulate the table everytime it is imported. I do not want the data added on to the existing data in the table.
I use a batch file to distribute the front end of a database application. Currently, everytime the user clicks the shortcut on her desktop, the batch file executes and copies the front end from a network location to user's local machine. The FE is updated like every couple of days. The users run the database more frequently.
I would like to modify the batch file so that it checks some attribute of the FE file to decide whether it needs to be updated. I can't rely on file size, since the FE includes temporary tables. I essentially need something like the "tag" property of form controls, only for files. It would be ideal if it was me who sets this property, like "version number". Except it has read without opening the file itself.
I posted this within the Reports as well, but since this has a little bit of VBA decided to ask this here as well.
I have a report that is created from the following query (qryTotalProjectHours). What I am trying to do is get the total hours spent on Tasks within a given time period. A given Task can we worked on by multiple individuals and hence I need to find a way to aggregate the hours spent.
Code: SELECT TasksEntries.Project, TasksEntries.Task, Sum(TimeTracker.WorkHours) AS TotalHours FROM TasksEntries INNER JOIN TimeTracker ON (TasksEntries.EmployeeId = TimeTracker.EmployeeId) AND (TasksEntries.TaskID = TimeTracker.TaskId) GROUP BY TasksEntries.Project, TasksEntries.Task
I accept the start and end dates in a form and pass it like shown below. WorkDate is a column in the TimeTracker table and is not present in any other table.
When the report is invoked, I get a box where it says "Enter parameter value" for Workdate..
Is there anyway I can get rid of the prompt? I never thought you needed the column name in the SELECT statement to be able to run this.
I should add the I tried the query with the WorkDate hardcoded in there and it worked fine and returned the correct results
I have attached the cut down version of the database that I am working on.Open up the frmManagerReport Form Leave the Employee drop down empty Enter the start and end dates ( I have used 4/1/2015 and 4/30/2015) Select the 3rd option "Generate Tasks by Total Hours" click on Run When you do that you will see the prompt come up. Enter any date and you will see the report. The report generated uses the results from the query and does not filter on the date selected in the form. This is what I have been struggling to fix since yesterday but have reached nowhere..
I have a report that is created from the following query (qryTotalProjectHours). What I am trying to do is get the total hours spent on Tasks within a given time period.
Code:
SELECT TasksEntries.Project, TasksEntries.Task, Sum(TimeTracker.WorkHours) AS TotalHours FROM TasksEntries INNER JOIN TimeTracker ON (TasksEntries.EmployeeId = TimeTracker.EmployeeId) AND (TasksEntries.TaskID = TimeTracker.TaskId) GROUP BY TasksEntries.Project, TasksEntries.Task;
I accept the start and end dates in a form and pass it like shown below. WorkDate is a column in the TimeTracker table and is not present in any other table.
When the report is invoked, I get a box where it says "Enter parameter value" for Workdate..
Is there anyway I can get rid of the prompt? I never thought you needed the column name in the SELECT statement to be able to run this.I should add the I tried the query with the WorkDate hardcoded in there and it worked fine and returned the correct results
Could someone please tell me if this is an appropriate way to ensure that all of my users open the most current version of my database each time?
I am not using workgroup security(not needed), and have the be and fe on the network drive. Right now everyone has their own copy of the fe so everytime I make a change they get a new copy emailed to them. I would like to use a batch file instead. This works but want to make sure that I am doing it correctly if I just send everyone this batch file to put on their desktop (CostSavings.bat)
@echo off
if not exist "C:Program FilesMicrosoft OfficeOFFICEMSACCESS.EXE" goto Access11
"C:Program FilesMicrosoft OfficeOFFICEMSACCESS.EXE" "V:ProjectMaterialsPurchSQECost SavingsCostSavings2005.mdb" goto end
:Access11 "C:Program FilesMicrosoft OfficeOFFICE11MSACCESS.EXE" "V:ProjectMaterialsPurchSQECost SavingsCostSavings2005.mdb" goto end
I am trying to automatically update a front end with a batch file. I have searched and found a great solution :D but I am having one issue :confused: .
The batch file runs great . . . goes to the network drive; compares the version;deletes the old front end on my system and replaces it; opens access with the new version.
The issue is that is keeps the old version open. I see on some posts that some of you did this successfully but nobody went into that detail. I have tried multiple things but still can't get it. :D
I want to use a batch file to start the DB. This will check if the Front End is on the users machine and if not copy it over.
It will then check what version of Access they are running and use the appropriate shortcut to open the Database.
This all works fine except that the Batch File does not close down until the Database is closed. Is there anyway to close the Batch File automatically while the database is running?
The Batch file I am using is
@echo off rem ************************************* rem ** Batch file to copy FE ** rem *************************************
rem ** Copy Database **
if not exist "c:DB" md "c:DB" if not exist "c:DBFE.mdb" copy "NetworkPathFE.mdb" "c:DBFE.mdb" if exist "C:Program FilesMicrosoft OfficeOffice10MSACCESS.EXE" goto Office10 if exist "C:Program FilesMicrosoft OfficeOffice11MSACCESS.EXE" goto Office11 if exist "C:Program FilesMicrosoft OfficeOfficeMSACCESS.EXE" goto Office
:Office10 "C:Program FilesMicrosoft OfficeOffice10MSACCESS.EXE" "c:DBFE.mdb" /WRKGRP "NetworkPathSecured.mdw" goto End
:Office11 "C:Program FilesMicrosoft OfficeOffice11MSACCESS.EXE" "c:DBFE.mdb" /WRKGRP "NetworkPathSecured.mdw" goto End
:Office "C:Program FilesMicrosoft OfficeOfficeMSACCESS.EXE" "c:DBFE.mdb" /WRKGRP "NetworkPathSecured.mdw" goto End
i want to create a batch file that basically backs up the database file i want into a folder as follows
x:ackupsdatabase020206db.mdb
i know that the command to create the folder is mkdir but i want to know how to integrate the data into the folder name so that this batch file can be run in windows scheduler and i dont have to worry about it overwriting the existing folder name.
I am trying to make on load even to check if server side applicate FE is same as of client side FE. For this I am quering a field to check no and if it is not same then to start a batch file which copies and replaces client side FE.
Problem is if access application is running, it gives error. So I need to close the db and replace application.
I know xcopy command to replace file but do no how to trigger close application.
Any way to deploy the mde with a batch file? I been looking for way other than the autofeupdater. Can't get it to work since I prefere not to involve the users. I been getting bits and pieces; but it seems like you send a bat file to the users via email and when they run the script; it appends itself to the doc and settings in the users folder??
I am using MS Access 2007 and I am trying, from my VBA code, to execute (or run) a Batch file. Now the batch foile works, but not from my code.
I used to be able to just do this --> Call Shell("S:AccountingAPTex FilesFile List Generator.cmd ", 1) And it would runit. But using this I get a message telling me that it is an invalid procedure call. So upon looking around on the net I found tha ton place said that with MS Access 2007 you need to do this:
But while it does not error out it dooes noting eitheer. What the batch file does, when it works, is produces a list of all the file names in a folder.
In the past I've used command buttons with both VBA & Macros to bring up a prompt to save or discard changes to the current record then close the current form.For some reason, on just one single form that I just created, none of the techniques seem to work. It will close the form but will automatically save changes without bringing up a prompt. I've tried creating buttons from scratch, trying out both Macros & VBA, and I've tried copying/pasting buttons from other forms--of course making the appropriate changes.
Being physically disabled & using a headpointed to type & point to things on the screen so-so often I need to adjust my column width. How I can create a short cut/hot key to prompt the Column Width command?
I'm sure most people use Windows shortcuts to open their secured databases, but I found that it didn't always work (depending on which computer I used). Editing a shortcut is pretty confusing since the command is all on one line. I decided to make a batch file to open my secured databases instead. Here's a batch file I use to open a database of mine:@ECHO OFFREM - Set variables to be used in the batch file.SET BACK=Z:BobManager Listdb_be.mdbSET FRONT=Z:BobManager Listdb_fe.mdbSET WRKGRP=Z:BobManager ListSecured.mdwSET OFFICE=C:Program FilesMicrosoft OfficeOFFICE11MSACCESS.EXEIF EXIST "%OFFICE%" GOTO PROMPTSET OFFICE=C:Program FilesMicrosoft OfficeOffice10MSACCESS.EXEGOTO PROMPTREM - Ask the user which end to open.:PROMPTCLSSET /P dbChoice=Do you wish to open the frontend(1) or the backend(2)? if "%dbChoice%" == "1" ( "%OFFICE%" "%FRONT%" /wrkgrp "%WRKGRP%" GOTO END)if "%dbChoice%" == "2" ( "%OFFICE%" "%BACK%" /wrkgrp "%WRKGRP%" GOTO END):ENDThis isn't the simplest batch file ever, but if you want to use this you just need to change the paths to your frontend, backend, workgroup file, and your version of Access. If Office was installed in the default location you shouldn't need to change those lines, unless you know you'll always be using the same version of Access.
I am looking to find some code that I can use in a batch file to compact an Access 2000 database that has a database password set on it.
I know about "C:WIPSPOCOneCall_BE.mdb" /compact but need to find a way to pass it the password. What it does at the moment is open and waits for the password to be entered, and then it just opens.
I am looking to set up a scheduled task so that the database gets compacted every night.
I've created some code to make a backup of my database backend. I've tested it and it seems to work fine, I just have some questions about it's use. Here's the code:
Code: Public Sub backupBackend() Dim TestFile As String Dim strReplFile As String Dim copyFromLocation As String Dim copyToLocation As String copyFromLocation = "S:Trust 2 AnalysisData"
[code]....
It will be triggered by a button push. It creates a batch file to do the copy operation and then delete itself.
In an ideal world I would schedule the backup at a safe time through the Windows scheduler, but our IT department won't allow me to do so.
The concern I have is that we could potentially press the backup button while a user is performing an action that writes/modifies data. If this were to happen would my backup potentially contain corrupted data?
If so, is the workaround to simply press the backup button when nobody is using the database?
Is there a way to open an Access Database from a batch file or VBS file wait for 20 seconds and then close the Access file. Preferably I would like the Access file to run in either invisible or minimized mode. I would like the Access Database to close again after the 20 seconds has elapsed.
(The reason for this is so that the Database can refresh itself from Sharepoint on another users machine so that the excel reports on his machine are up to date).