I'm using Microsoft Office 2010, I'd like to use Data Macro of MS Access but all the icons on the ribbon (before change, before delete, after insert, etc ) are not available. Do I have to install something else ?
Related
I have a MS Access 2003 database on a Windows 10 PC running WampServer 2.5. I can open it in LibreOffice 5.1 Base. I added a test table with LibreOffice Base, consisting of the following fields:
id
word
The first field (id) is an integer field, and is autoincrement (set to AutoValue).
The second field (word) is varchar.
I saved the table, and then opened it. There are no input fields showing. If I click on Insert/Record, the Record link is greyed out.
To open the Access database with LibreOffice, I did the following:
Opened LibreOffice
Selected Base Database
Connected to an existing data of type Microsoft Access
Browsed for the Access database
Selected not to register the database, and to open the database for editing
Named the .odb file
Opened the database table
Tried to edit a record, without success
I can create a database as HSQLDB Embedded with the same table and fields, and everything works as expected.
What am I doing wrong? Any thoughts?
Thanks in advance.
John
Well, in my particular case, the answer was to open the 2003 Access database with ODBC. There are good explanations here: How to Connect to a Microsoft Access Database
Here are the steps I took:
Connect to an existing database, choose ODBC, then Next
On Database Wizard sceen, it asks the name of the ODBC data source on your system. Select Browse
On the Data Soure screen, select Organize
On the ODBC Data Source Administrator screen, select Add
On Create New Data Source screen, select a Microsoft Driver (among different drivers and languages), then Finish
On the ODBC Microsoft Access Setup screen, type in Data Source Name, Description, and Select database, then OK
On the ODBC Data Source Administrator screen, select the User Data Source you just set up, then OK. The dialog closes.
On the Data Source screen, select the data source you just set up, then OK
Next Password, if you are using one
Next screen, "Yes, register the database for me" (which may not be needed here) and "Open the database for editing", then Finish
Next, give the .odb a file name and save it.
That's it.
I have an Access application that I share with other users. We share the database on a Sharepoint site and each check it out / download it for edits, then put it back in Sharepoint and check it back in. We do it this way because response time if we all share the same copy on a server is unacceptable, and we only need one person to have acces at any one time. That's not my problem right now.
Last week, my old PC died and I replaced it with a new one. The old PC is Windows7, 32 bit, with Office 2010. The new PC is also Windows7, but 64 bit and with Office 2013. As far as I know, I did not change the database format to a new version of Access or make any other changes. The data base still works fine on my new PC.
The VBA script integrates the data base with Excel workbooks and exports data to Excel. One reference I have selected is Microsoft Excel 15.0 Object Library - the same reference I've always used. Now, when I load the database back to the server and other users downloads it, they can open the data base but get an error that says "Searching for reference file Excel.exe", followed by “Undefined function ‘Format’ in expression”.
The other users' PCs are configured the way my old one was, and they were able to use the database with no problems before I converted to Office 13 and saved my copy back to the server.
So my questions are - what is causing this, and more importantly, what can I do to fix it?
"... reference I have selected is Microsoft Excel 15.0 Object Library ..."
That Microsoft Excel 15.0 Object Library is the version for Office 2013. With Office 2010, the version is Microsoft Excel 14.0 Object Library.
The reference was originally 14.0 when you developed and used the db in Access 2010. When opened in Access 2013, Access adjusted the reference to its available version (15.0). Unfortunately, when you try to use the db again in Access 2010, Microsoft Excel 15.0 Object Library is meaningless to that Access version, so it doesn't know to use Microsoft Excel 14.0 Object Library instead.
The fix is to remove that reference and convert your code to use late binding.
Here is a brief example of late binding, copied from Using early binding and late binding in Automation:
' Declare the object as a late-bound object
Dim oExcel As Object
Set oExcel = CreateObject("Excel.Application")
Note, if your code uses Excel named constants, you will need to substitute the constants' values for their names, or declare the constants in your code.
I made Access Form which was working fine in Access 2013 and Access 2007 until I add some new features(I don't remember what) to it.
After adding them, it keeps giving me error "Unrecognize file format" when I try to run it in Access 2007. Meanwhile it runs fine in Access 2013.
I want to ask if there exists some software to convert Access 2013 file to Access 2007? Or is there any way make it compatible to 2003? When I Save As 2003 file it don't because of some added features.
Please help!
You could try using Access' Application.SaveAsText in 2013 and Application.LoadFromText in 2003.
Even if this doesn't work directly, if you have an older version that does work, you could compare the differences between the text files the two versions of Access produce, as SaveAsText produces (for the most part) human readable output; the only unreadable parts are typically images.
I've had this happen to me during development on A2010 and deployment on A2007. The possibilities are explained on this page. It is likely that you added an Empty Cell control to a form that had a VBA module (or added a module to a form with an Empty Cell control). I did this unknowingly by inserting a row into the AutoHeader that is created in forms by the Form Wizard.
Follow the steps at the bottom row of Table 2 to rectify this.
I'm trying to convert an accdb file from use in Access 2010 to Access 2007. I first tried opening the file with Access 2007 and I get the error Unrecognized database format. I was able to get my backend to open in 2007 by removing the MSysResources table (which uses the new attachment datatype) but the same technique has not worked with my front end.
My front end does use a webbrowser control (which Microsoft claims won't work but also won't stop the file form being opened). I thought I'd better import one form at a time to see where the error is. While in a new, blank 2007 file I tried to use External Data>Access to import one form (a very simple form, a button, two text boxes). Same error as opening the whole file. I tried having 2010 open at the same time as 2007 and copy/pasting the form over. Same error. Unrecognized database format.
I then try to export the form using Application.SaveAsText in 2010 and import using Application.LoadFromText in 2007. There were errors importing but at least this method generates an error log. The error.txt file has issue with the header line PublishOption =1. After I remove that I continually get errors regarding theme settings. I remove every line it has a problem with which are from there on all theme related (HoverForeThemeColorIndex, AlternateBackThemeColorIndex...). I never did get rid of enough of these to successfully import the form though.
Where am I going wrong? If, like I suspect, I cannot use a theme generated in 2010 in 2007, how can I remove all these references from all my forms? Is this actually the problem? How can I more smoothly move back to a 2007 file?
Edit: It turns out the client is on Office 2007 SP2. I'm going to update my development machine and try all this again. I was not using nay service packs originally.
According to the Microsoft support article
Backward compatibility between Access 2010 and Access 2007
an Access 2010 database can be reverted back to "Access 2007 format" by
removing all Access_2010-specific features from the database (details in the article),
creating a new "Blank Database" (not "Blank Web Database"), and
using External Data > Import in Access 2010 to import all objects (tables, forms, etc.) from the previous database into the new (empty) one.
The list of features that must be removed include a couple that may not be immediately obvious to a casual inspection of the original Access 2010 database, such as
using a new or updated database sort order, and
using "Access 2010 encryption compliance".
I want to check wheather my database application is running in a fullversion MS Access or only with a viewer / limited MS Access.
The problem is that in a limited version a user can close the last form and then is not able to reopen any form without restart the whole application.
Private Sub Form_Unload(Cancel As Integer)
If LimitedVersion Then
Cancel = True
End If
End Sub
So the question is how to determine LimitedVersion ?
You can use:
SysCmd(acSysCmdRuntime)
It will return True for the runtime version.
However, I would never allow the last menu to be closed in an application. The people with a full version can open the application in a different way if they need access to design.
To simulate the runtime environment, you can use the /runtime switch:
For MS Access 2010, it would look something like this, note that the line break is for display purposes.
"C:\Program Files\Microsoft Office\Office14\MSACCESS.EXE"
"z:\docs\demo.accdb" /runtime