How To Compact Ms Access 2000 In Vba Code
Sep 28, 2005Hi,
Does anyone know how to compact a ms access 2000 db in vba code. I want the database to compact evertime it is opened up.
Thanks
Hi,
Does anyone know how to compact a ms access 2000 db in vba code. I want the database to compact evertime it is opened up.
Thanks
Hi All
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.
Any ideas?
Cheers.
Can you compact on close in an access 2000 runtime enviorment?
Also, if i select the option to compact on close will it work on every computer i copy this database to? Or is it a property of that computer?
I have the (.frm) code for the forms that were created with VB5. How do I use this code to create forms in MS Access 2000?
View 1 Replies View RelatedIs there a way to compact and repair DB with vba code?
If so, can someone show me? Thanks in advance ;)
Hello,
I found this here:
Public sub subCompact()
On Error goto Err_subCompact
Dim fs, f, ProjectSize, filespec
Dim strProjectPath As String, strProjectName As String
strProjectPath = Application.CurrentProject.Path
strProjectName = Application.CurrentProject.Name
filespec = strProjectPath & "" & strProjectName
Set fs = CreateObject("Scripting.FileSystemObject")
Set f = fs.GetFile(filespec)
ProjectSize = Round((f.Size / 1024) / 1024, 2)
If ProjectSize > 30 Then
Application.SetOption ("Auto Compact"), 1
Else
Application.SetOption ("Auto Compact"), 0
End If
Exit_subCompact:
Exit Sub
This was in a 2004 post...does anyone have something similiar that may have more bells and whistles since that was 3 years ago? Dont know if something else was made by someone that works better?
Also does this go into a module?
I am looking to automatically compact and repair the Front-Ends on the Users workstations when it reaches a certain size...
ProjectSize = Round((f.Size / 1024) / 1024, 2) If I wanted to change this is this in kilobytes or how would I change this to compact and repair when it reaches say 5 mb. Its currently at almost 2mb now I believe. Dont know what to change in order to change the size that triggers compaction.
Thanks for any insight to this.
Hi
I have a database that currently has security in place so that users input their own usernames and passwords to access the database. The users have recently been added to a windows 2000 server and I want to be able to use their windows 2000 server logon credentials to provide them with automatic access to the database. Is there anyone out there who knows how to set this up? It is a rather urgent request if you could get back to me either on this forum or via email
chris@ctbjs.co.uk
many thanks
Chris
I am opening and closing a series of Excel 2000 Workbooks using Access 2000 VBA and want this sequence to be able to complete without any human intervention.
However, there are 2 instances when this stops and waits for a human option to be selected:
1. When the spreadsheet is password protected
2. When the spreadsheet has automatic links I get the message:
"The Workbook you opened contains automatic links to information in another workbook. Do you want to update this workbook with changes made to the other workbook?"
How can I code it so that in situation 1 it skips this file and in situation 2 it automatically defaults to do not update?
Any help most appreciated.
Dalien51
If I have a report in MS Access 2000 generated based on the criteria selected of a project with work order "9999" with the labor costs, materials costs and the Totals of each crew1, crew2,... and I would like to have those expenditures populated in corresponding cel in Excel for each crew, HOW would I do it?
To think it out loud, could I create a button on a form, so when I select the criteria for the work order, and when I click the button, it should refresh/update the Exel file with the new data...?? How do I write VBA code for that...?
Please help...Thank you so much....
Hi everybody,
I have recently been doing a conversion for my boss for a access 2000 database (both front and backend) to a MSSQL backend.
I finished the conversion today (as quite a lot of the code / queries ran slow due to access running the queries locally rather than on the server). And tested it on my and my boss's machine with no problems so he gave the go ahead to update everybody to our new mssql 2000 backend with the modified frontend.
This is when the problems started; We had two different sets of forms for accessing one of our databases systems - the log system, one is the original dynaset based form, and the other is a newer set which uses snapshot views and preforms updates via queries. Nobody uses the old dyanset system apart from my boss and one of the administrative team as they have things on that window which they need to see. About 30 minutes into the release of the new database the system frooze up on my bosses computer and nobody could create a new log (the server was timing out). I assumed this had something to do with the old dynaset's creating locks on the table.
I offlined the database and kicked everybody out of the front end, turned it on again and tied again, this time banning everybody from the dynaset system. Within 10 minutes another computer frooze up, again with a timeout on the insert query. I discovered that after you had added a new log to the database it would timeout on all subquent additions (something it hadn't done during testing) . Further investigatiion showed it was the snapshot list window causing the error, so coded the add log window to close the list before preforming the insert query and then reopen it afterwards. This allowed my machine to make multible additions without flaw. So I released a new client to everybody. 15 minutes later it was timing out again, but this time there you could not even make one new record.
I checked for locks on the table though the server management table and couldn't find any for the Log table. I have restarted the SQL server box and with no avil. So I reverted our backend to the access mdb file and told people to use the old client.
I am at a complete lose to why this is happening, if anybody has had any expericences like this or knows the cause please tell me.
Some information on the database in question.
It was made as an access 2 database all intergrated into one file, then it was seperated into two files (frontend and backend). Upgraded to Access 97, then to 2000 before this final update to MSSQL 2000.
The log system has two main tables. The first is the log title / info table which links (one to many) to a log entry table. This problem only occurs on the main log table and does not appear to be reoccurring anywhere else within the database. The main log table has just under 18,000 rows in it.
Thank you in advance for any help,
Dom
Is it possible to have the master datebase in SQL Server, the replica in Access format and still can sychronize them?
Thank you in advance.
I obtained this code from the Net and am successfully using it on a form in MS ACCESS 2002 under Windows 2000. However, all of the string functions result in compile errors and force debug mode when the form is executed under XP Pro (Compile error: Can't find project or library). Any assistance will be appreciated as I am approaching my deadline for rolling this app out on XP Pro systems. Thanks.
Private Declare Function apiGetUserName Lib "advapi32.dll" Alias "GetUserNameA" (ByVal lpBuffer As String, nSize As Long) As Long
'-----------------------------------------------------------------------------------------
' This code is used to retrieve the network user name by accessing the API apiGetUserName.
' Created by: Unknown (Found on Dev Ashish web site http://home.att.net/~dashish/api)
' This code has not been altered in anyway.
' Added to database: 27 Dec 1999
' Added by: Richard Rensel
'-----------------------------------------------------------------------------------------
Function fOSUserName() As String
On Error GoTo fOSUserName_Err
Dim lngLen As Long, lngX As Long
Dim strUserName As String
strUserName = String$(254, 0)
lngLen = 255
lngX = apiGetUserName(strUserName, lngLen)
If lngX <> 0 Then
fOSUserName = Left$(strUserName, lngLen - 1)
Else
fOSUserName = ""
End If
fOSUserName_Exit:
Is there a way perform CTRL+' with vba code in MsAccess 2000
Carbo
CTRL+' copies data from a field in the previous record to that field in the current record.
Resolution:
http://support.microsoft.com/?id=210236
If you receive a compile error related to DAO Recordset go to:
http://www.mvps.org/access/bugs/bugs0031.htm
To Everyone
My access database grow exponentially to 170 MB, We share the access database on the network and those tables on
the access database are linked to SQL Server. I tried to compact and converted to 2003 format, It still doesn't shrink too much for the size. Please someone tell me what should I do for it, because someone try to access thur the VPN connect, and it make no sense for her to take 5 mins for loading a report remotely.
Timothy
Does anyone know where the Compact and Repair feature is to be found in Access 2007? It was on the Tools menu in Access 2003, but I can't find it in 2007!
Thanks,
Gary
Hello,
I am trying to do a compact and repair on my database but when I do that I find that my database which is on the server is not recognized by the 9 other client machines.
My shortcut which uses a workgroup file is on each machine and was working fine until yesterday. Once I perform a compact and repair the clients say that they cannot find the file on the server.
Howcome the compact and repair operation is screwing up with the accessibility of the file?
Please advise.
Thanks,
Access 2013 ... Is it possible to compact a database to a new name?
(In previous incarnations of Access I regularly 'compacted and repaired' databases to USB sticks rather than simply copy the file in the (mistaken??) belief that this was a more reliable approach)...
I can't see where to do this in Access 2013!
How would I use the Access 2010 setting, 'Compact on close'?We have a back end on a server and many users with front ends on their computers. So would I set 'Compact on close' on the back end? And then it would compact when the last user logged out?
View 3 Replies View Related "how to COMPACT the DB by introducing delay of 10 seconds and then close the DB".In the Database, I'm able to accomplish the "Compact" the database using the function below.
Function Compact()
SendKeys "%(FMC)", False
End Function
As my DB is quite huge, the Compact action takes around 10 seconds to complete.Now, i would like to Close the Database after Compacting the DB. I tried including "DoCmd.Quit" in the function. The commands in the function, closes the DB but the Compact function doesn't seem to have executed as it needs 10 seconds to complete.
Function Compact()
SendKeys "%(FMC)", False
DoCmd.Quit
End Function
how to introduce this delay of 10 seconds and then close the DB.
I am looking for a registry setting or .reg file to rightclick on an Access file and in the menu i want to compact or decompile the access file.
I know it is possible but i don't know what's the registry setting.
I have two database applications and they are:
- the (A) application is for administration use.
- the (B) application is for normal users use.
the idea is that: I made the (A) application for administrators who have full control over the database objects (tables, forms, queries, and so on ...).
the (B) application I have created for normal users who will have only to use forms to insert some data and display data only.
but the two applications has a respective table called "vacation request" table. where I linked them, so the both administrators and users can share the data.
The real question is that: How can I prevent the users from seeing the database objects in their application. I used the database options which have helped me in hidding the database objectives when the users open the application, but unfortunately they managed to access to the database objects by pressing the special keys.
I would like to have an access to the (B) application when I want to make some modifications to the forms and then lock it from users where they only have to use the forms for requesting vacations and view the vacations.
I am working on a massave aplication that has been running in Access 2000, but recently several of the file sharing users have installed Access 2003 because of the limited availability of Access 2000. All the users are using the same file off the server.
The problem we are having is that when we reference a subform in the "[Forms]![FormName]![SubformName]![FeildName]" Access 2003 does not recognize it and returns an error. I have found that if I will modify it to "[Forms]![FormName]![SubformName].[Form]![FeildName]" it is recognized in both 2000 and 2003.
To try and change every instance of a subform reference will take forever and I am garuteed to overlook something. We reference subforms all over our program, missing any one of them would be a disaster. Before I went to the tedious task of looking through everything I just wanted to throw the situation out there and see if any of you had any great ideas on how to get it fixed efficiently. I would apreciate any ideas.
I upgraded a 2000 db to 2003 recently. When I ran the function below it gave me an error on the line in green. Any thoughts? Thanks.
Const FIRSTROW = 13
Dim wsp As Workspace, dbv As DAO.Database, tblResolve As DAO.Recordset
Dim tblVchs As DAO.Recordset, tblImpTmp As DAO.Recordset
Dim ObjXLApp As New Excel.Application
Dim FileToOpen As String, WhereCriteria As String, ImportTemp As String, tmpVch As String
Dim TotalDupes As Integer, TotalGood As Integer, TotalRejects As Integer
Dim TotalBlank As Integer, R As Integer, C As Integer
Dim BadSheet As Boolean, ImpFail As Boolean
Dim tmp, tmpType, tmpCtr, tmpRsn
If Forms![Import Block Vouchers]![Import Program] = "0" Then
MsgBox ("You must select a Program to load.")
ObjXLApp.Quit 'Exit from MS Excel
Exit Function
End If
Hi,
I've created a database in access 2003 with the default file format being Access 2000. Everything works fine on my computer and many others, all of whom are running different versions of access (2000, 2002 & 2003).
I have not had any problems with this database until recently and in the last few weeks we have had 2 users, both of them being Access 2000 users who have had the same problem.
The problem they are having is that when they click on any of the switchboard items, the buttons depress an then come back up again when the cursor is moved away, but nothing else happens - no action, no error message - nothing!!! Its the same for all of the buttons on the switchboard.
Does anyone know what is causing this? I have another computer with Access 2000 on it and this works fine, as it does on several other computers runiing Access 2000, I just cannot understand why it is not working on these 2 particular machine.......
Many thanks in anticpation.
Steve
I have recently installed access 2003 w/access 97 installed both are on my hard drive. When I create a new db in access 2003 it saves it in an access 2000 format. Does any one know why it does this?
Thanks--Appreciate any help
i am trying to use access 2000 database onto to access 2003. When i try to click design mode to change something it gives me this message:
You dont have permissions to modify.
If i run it on access 2000 it runs fine.
Someone please help.