Microsoft Access





Microsoft Access is a rapid application development (RAD) relational database tool. Access can be used for both desktop and web-based applications, and uses VBA (Visual Basic for Applications) as its coding language.

Share tech news, updates, or what's on your mind.

Sign up to Post

we are using zimbra mail accounts in our organization,which ports are released to public network in zimbra,our clients communicate with out side and internally ,so with securely what ports are released in public access
Industry Leaders: We Want Your Opinion!
Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Click download, a white box appears with and X and nothing else.. Attempted with Chrome & IE
Word 2016/Win10:


In a manuscript, I have the word "fiance" where the "e" has an accent over it.

When I search on "fiance", it's not found. Doubtless b/c of the accent. Is there a workaround?

I have an Excel file that looks like the following.  I know how to use the query wizard to find dupe Company Names and how to use the query wizard to find Dupe First Names.  But how do I create a query to find records that have no dupes?  In this case, just one record.

Dupes Example
I have a simple database that contains a couple of tables, queries. macros and modules etc.. I'm trying to make it more users friendly, so I have designed a form that loads up and will give the user the option to select an option button then the macro will run and create the report. However what I want the form  to do is to remember the last option button that was selected when the form re-opens.

Hi. I am running the following event procedure which worked in another part of my database but is now returning a value of "-1" to my field in this case "ProjectTitle" which is a text field. My code is below:

Private Sub ProjectTitle_AfterUpdate()

    Me!ProjectTitle = True
    DoCmd.RunCommand acCmdSaveRecord
    Dim strProjectTitle As String
    strProjectTitle = Me.ProjectTitle
    With Me.RecordsetClone
        .FindFirst "ProjectTitle = " & Chr(34) & strProjectTitle & Chr(34)
        Me.Bookmark = .Bookmark
    End With

End Sub

Open in new window

Anybody know why?
I have a continuous form 'Address_Pre' in my Access 2013 application.

Each line lists a subset of all of the address information for a client. (ClientName, Contact Name, address line 1, office phone, email address)

All of the text boxes are locked on form 'Address_Pre'.  

There is an 'Edit' button to the far left of each line o form 'Address_Pre'.  When this 'Edit' button is pressed the user is presented with an editable screen ('Address_Full)' containing all of the address information for the client.  Changes to any of the address fields can be made on this screen.

When the user saves the revisions on the 'Adddress_Full' it closes and they are taken back to the continuous form 'Address_Pre'.  When I come back to 'Address_Pre' I do a requery to show any information that may have been changed.

This works and the updated information is reflected on 'Address_Pre'.

The problem is that when I do the requery upon returning to 'Address_Pre', the top line of the form becomes the current line.  If the user is working there way down thru all the addresses on the form they have to arrow down to the next address they want to work on.

What I would like to have happen is:

The user presses the 'Edit' button on the twelfth (or whatever) line down from the top of the form.  They make changes and come back to 'Address_Pre'.  I want there changes to be reflected on 'Address_Pre' but I also want the twelfth (or whatever) line they were working on to be the current record …
An oldie, but a goodie.

I have created a large Relationship Diagram in Access 2013 and I do have a Cannon iPF8400 Plotter. I have set the page size to 18 x 24 C, which shows the relationship on one page; however the report will not print, as the plotter errors out. If I go into Report Design View the paper size has been truncated to 12.5 x 19.5 and the Diagram Window has been adjusted to fit to that size.

I have read this thread, Lebans and Allen Brown are no longer available.

So what are my options?
I'm trying to work out what parts of a project that I need to tackle are feasible using MS Access. Although this question has many parts, I am really after yes/no answers and perhaps some general clarifying comments about whether it's feasible. If it turns out feasible then I will ask new, specific questions on those parts I don't know how to do.

I have a table containing details of jobs that need to be done in a geographic area and the list includes GPS coordinates. The plan is to:
1. Display the list of jobs on a MS Access form alongside a map showing ALL the  points, not just the selected one (to get a visual overview). Since I don't think I can create a single hyperlink that would display all the points I thought the easiest way would be to use a function to create a kml file and then launch that KML file in a browser control with Google Earth on the MS Access form.
     I know how to create the KML file but is it possible to display the resulting Google Earth display in a browser control on the form?

2. I would like the user to be able to select a job, assign it to a team and have Google Earth reflect the assignment by perhaps changing the color of the pin. The only way I can think of would be to re-create and re-launch the KML file after every update.
    Is that a feasible approach, or is the refresh likely to be too slow?
    Is there a better way?
    Is there a way to have Google Earth highlight the pin that corresponds to the record selected in the …
I have a form with two list boxes. I want the one on the left to contain all documents assigned to a parent record. I want the other box to show all documents NOT assigned to that record. I used to have a Select query for the Unassigned box that had another Select query within it. The inner select query used a left join to identify records WITHOUT a match. But I lost the query syntax! Any help appreciated.
Enterprise Mobility and BYOD For Dummies
Enterprise Mobility and BYOD For Dummies

Like “For Dummies” books, you can read this in whatever order you choose and learn about mobility and BYOD; and how to put a competitive mobile infrastructure in place. Developed for SMBs and large enterprises alike, you will find helpful use cases, planning, and implementation.

I am using a SQL Server DB as the back end of an Access 2013 application.

A view, which is to be used for the row source of my combo box,  has been defined in SQL and linked to the front end,.  The view contains and 'Order By' in SQL Server and I understand that the Order By is not used to order the view in Access.

It all works but when I used the View as the row source the items are not in any particular order.  I want them ordered.

What I did to accomplish that was click on the '...' on the rowsource line, which took me to query builder.  I pulled the fileds into the query and set the Order I wanted.  Now the entries in the dropdown come up just as I want them.

The rowsource is now:
"SELECT dbo_vADrop_MuniMaster.MuniMastID, dbo_vADrop_MuniMaster.MuniCode, dbo_vADrop_MuniMaster.MuniName FROM dbo_vADrop_MuniMaster ORDER BY dbo_vADrop_MuniMaster.MuniCode;"

My question:  Is the way I accomplished the sorted dropwdown, the best way?  

Since this view/drop down may be used on multiple forms I thought it might be best to define a permanent Access query with the view as the basis.  The Access query would sort the data in the order I want.  The Access query would the be used as the row source on all drop downs using information from this view.

Just thought I'd check with the experts on the recommended way of handling this situation.
I have an Access 2010 form (frmContributionSingleRec) that is working correctly except for two things.  When the Move Record button is clicked the record displayed on the form moves to another table as expected but then a dialogue box opens which prompts me to enter a parameter value for another form.  That other form is not open and there is no code behind the open form that makes reference to it.  The same thing happens when another button is clicked that is supposed to confirm the record has been moved.  None of the queries that run using code behind the form reference the closed form.

Something is obviously referencing the closed form but after reviewing everything connected to the open form I'm stumped. The code behind the Move Record button is shown below.

Private Sub cmdMoveRecord_Click()
    Dim strMsg As String
    strMsg = IIf(IsNull([Org or Project Name]), "    Organization Name" & vbCrLf, Null) & _
             IIf(IsNull([Street Address]), "    Address" & vbCrLf, Null) & _
             IIf(IsNull([City]), "    City" & vbCrLf, Null) & _
             IIf(IsNull([County]), "    County" & vbCrLf, Null) & _
             IIf(IsNull([State]), "    State" & vbCrLf, Null) & _
             IIf(IsNull([Sub Category]), "    Sub Category" & vbCrLf, Null) & _
             IIf(IsNull([Zip Code]), "    Zip Code" & vbCrLf, Null) & _
             IIf(IsNull([Loan Number]), "    Loan Number" & vbCrLf, Null) & _
             IIf(IsNull([Dollar Amount]), "    …
I have a table called AUM.  I need to group on "peer group name" and return the top five values based on "return value" by descending order.   Also want to exclude values from "fund name" field that include the string "ETF".   There are 47 peer group names and grabbing five values from each should yield 235 funds.  Any help would be greatly appreciated.
I am working on an Access 2013 application with a SQL Server 14 back end.

There are dozens of SQL tables linked to the Access front end.  There are many forms bound to these tables used to revises and add data to the back end table.

No changes have been made to the application or DB in the last several months.

Both SQL and Access are on the same non-networked machine that all the prior work was completed on.  There have been no user or permission changes since the prior work was done several months ago.

I create a new table in the SQL DB.  then linked the table to the Access front end.  I opened the table from within Access and found that it I am not able to make changes, delete records  or add records.

I am still able to revise all the other tables that pre-existed the new one.  The new table is the only one I am having issues with.

Any ideas on what could be causing this or how to resolve this?
I have create Database in my Localhost in mysql Server by phpmyadmin. where i have define no any privileges for the database. when i made live this db on the Hostech Server provider phpmyadmin al tables where successfully imported and  in the Case of views it is showing  me the following error.
"#1227 - Access denied; you need (at least one of) the SUPER privilege(s) for this operation".

This is the example of the views query that i have to upload on my live DB server from my local server .
`qry_bom`.`FormulaID` AS `FormulaID`,`qry_bom`.`Code` AS `Code`,`qry_bom`.`MaxOfRevision` AS `MaxOfRevision`,`qry_bom`.`Revision` AS
`Revision`,`qry_bom`.`FormulaName` AS `FormulaName`,`qry_bom`.`Group` AS `Group`,`qry_bom`.`FragranceID` AS
`FragranceID`,`qry_bom`.`Qty` AS `Qty`,`qry_bom`.`FragranceName` AS `FragranceName`,`qry_bom`.`Flag` AS `Flag`,`qry_bom`.`CAS1` AS
`CAS1` from `qry_bom` where (`qry_bom`.`Group` = 'ESSENTIAL OIL') order by `qry_bom`.`FragranceName` ".

1:Main Question is that how can i make live my database with my views that i have created on my Localhost server.??
2:How can i import my  database with views  from my localhost server that should be import on any other mysql server without any privileges errors ??

Thanks In Advance!
Hi! I'm having some trouble with some code I am trying to put together. I am very much a beginner, so this could be a really simple problem. Basically, I have a subform that uses information from the parent form and and another subform to create an email. I am not having any issues generating the email, but what I want to do is create body text using a text field in the subform only if a related field is "true" (it's a yes no field).  Right now I have

  l_Msg.HTMLBody = "<!DOCTYPE html><body style=""font:normal normal normal 11pt/11pt calibri;"">" & _
  "<div>Hi" & " " & Me!PitchCastingFirstName & "!<br><br>" & _
  "I'd like to submit" & " " & UCase((Parent!FirstName) & " " & Nz(Parent!LastName)) & " for the role of " & Nz(Me!PitchRole) & "." & _
  " " & Parent!ClientPitchParagraphTbl_subform.Form!PitchParagraph & _
  "</div></body></html>" _

Open in new window

I want Parent!ClientPitchParagraphTbl_subform.Form!PitchParagraph to only be used if the related field "active" is set to "true".  Do I have to create a string or is there a simple declaration?

Thanks in advance.
Hi All,,,

My sample form is based on a tale straight
I don't want to insert a new record based on the value entered in a field for the new record.
I tried the following, as an example, but it inserts straight upon the first key hit in the "Last Name Field" and the If is useless!?

Private Sub Form_BeforeInsert(Cancel As Integer)
    If Me!LastName = "AA" Then
         MsgBox ("AA is not allowed"), vbExclamation, " VALIDATING LAST NAME ENTRY"
    Cancel = True
        End If
End Sub
Help please
Hi Guys
I know the basics of access and have compiled a few data bases.
I am an engineer that is busy automating my work so that I can speed up the tedious tasks to create automated reports by entering basic data.
This involves converting most of my excel files to access.
Another problem I have is that I don't know VBA and I am busy compiling my data base purely on access.
I have included some cut and paste VBA modules but until I have learn VBA I plan to stay away from this.
The one problem I have is that access does not seem to be able to lookup previous records in the same query even if you reference it to a number.
I know that on Google they say that you can create sub queries but most of the time you land up with circular references.
I would like to automate my calculations to work out the size of a tank.
the steps are as follows:
1) [In Flow_1] - [Outflow_1] = [Volume_1] with a certain [Water Level_1].
2) [Volume_1] + [In Flow_2] - [Outflow_2] = [Volume_2] ([Outflow_2] is based on [Volume_1] / [Level_1]
3) [Volume_2] + [In Flow_3] - [Outflow_3] = [Volume_3] ([Outflow_3] is based on [Volume_2] / [Level_2]
and so on.
Is their any one that can advise me on the best method to follow and Built in Functions to uses to create this in access query format.
your advice will be greatly appreciated.
Thanks you.
I have been working on an Access 2013 project, with Access as the Front end and SQL Server 2014 as the back end.

Since I was new to SQL Server, the backend SQL Server tables were first created in Access and moved to SQL Server using the 32-bit SSMA.  I moved dozens of tables to SQL Server with this process.  It is a simple process and has been a great help.  It even links the [now] SQL tables into the Access DB if you choose to.

I haven't used the SSMA in a few months but just had occasion to add a new table to the application.  In the SSMA wizard I am now getting an error when I choose the Access acccb I want to transfer the table form.  This is the error"

"Access Object Collector error: Database
     Retrieving the COM class factory for component with CLSID {CD7791B9-43FD-42C5-AE42-8DD2811F0419} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)). This error may be a result of running SSMA as 64-bit application while having only 32-bit connectivity components installed or vice versa. You can run 32-bit SSMA application if you have 32-bit connectivity components or 64-bit SSMA application if you have 64-bit connectivity components, shortcut to both 32-bit and 64-bit SSMA can be found under the Programs menu. You can also consider updating your connectivity components from
     An error occurred while loading database content."

The error sure …
What does it mean to be "Always On"?
What does it mean to be "Always On"?

Is your cloud always on? With an Always On cloud you won't have to worry about downtime for maintenance or software application code updates, ensuring that your bottom line isn't affected.

I want to click an image box on a form, find the image file and embed it into the underlying table all in one process. Is that possible?
I am using the following code to create an outlook item from my access database.

Dim objOutlook As Object
Dim objAppt As Object
    On Error GoTo Add_Err
    'Save record first to be sure required fields are filled.
    DoCmd.RunCommand acCmdSaveRecord
    Set objOutlook = CreateObject("Outlook.Application")
    Set objAppt = objOutlook.CreateItem(1)  'olAppointmentItem
    With objAppt
        .MeetingStatus = Outlook.OlMeetingStatus.olMeeting
        .Start = Me!ApptDate & " " & Nz(Me!ApptTime, "")
        .Duration = 30
        .Subject = Parent!FirstName & " " & Parent!LastName & " / " & Nz(Me!ProjectTitle) & " / " & Nz(Me!ProjectType) & " / " & Nz(Me!Role) & " / " & Nz(Me!Company)
        If Not IsNull(Me!Notes) Then .Body = Me!Notes
        .RequiredAttendees = Nz(Form!FirstName)
        .ReminderMinutesBeforeStart = 60
        .ReminderSet = True
    End With
    End If

Open in new window

The following line return an error 424 Object Required error

        .MeetingStatus = Outlook.OlMeetingStatus.olMeeting

when I change it to

        .MeetingStatus = olMeeting

It works fine, except, when the outlook item displays the to and cc fields are not displayes. I am just curious as to why and if there is way to fix the line. It worked in access 2003, but not in 2016.
I am writing a routine that periodically checks for emails in a mailbox.  I don't want the checking to happen that often (or by multiple users), as it will generate unnecessary traffic.  So, I've currently set it to check on certain events, such as when the application loads.  However, in theory, there could be multiple people running this routine at the same time.  So I need to ensure that it works without issue (hence the post).

First off, the function looks at a value (DateOfNextEmailReceiveCheck), in a table (tblSS_Emails_NextEmailReceiveCheck).  If this value is before Now(), it adds an hour and runs the function.  If the value is greater than now - it exits the sub routine.  Here is the code I am proposing:

On Error GoTo ErrorTrap

    Dim boolRun As Boolean: boolRun = False
    Dim rec As DAO.Recordset
    Set rec = CurrentDb.OpenRecordset("SELECT DateOfNextEmailReceiveCheck From tblSS_Emails_NextEmailReceiveCheck WHERE (((DateOfNextEmailReceiveCheck) <=Now()));")
    If rec.EOF = True Then
        GoTo Cleanup
        boolRun = True
        rec.Fields!DateOfNextEmailReceiveCheck = DateAdd("h", 1, Now())
    End If

    rec.Close: Set rec = Nothing
    If boolRun = True Then Call ReceiveMail
    If Err.number <> 0 Then Exit Sub

Open in new window

I know the error trapping is a bit vague, but I could do with a bit of feedback as to if there is a better way to achieve what I'm trying to achieve.  Or, if this is good enough.

Thanks as always.
I'm using this code in an onclick event of a command button on a form but it is not creating the new record.  ????

    Dim RS As DAO.Recordset
    Set RS = CurrentDb.OpenRecordset("Select * from tblAccounts where AccountID = " & Me.txtAccountID.Value)
    With RS
        If .RecordCount = 0 Then
            MsgBox "This appears to be a new record which does not already exist in the program.  A new record is being created."
            !AccountName = Me.txtAccountName
            !ImportantInformationAbountTheAccount = Me.txtImportantInformationAboutTheAccount
            MsgBox "This account already exists and will be edited if you have made changes."
            !AccountName = Me.txtAccountName
            !ImportantInformationAbountTheAccount = Me.txtImportantInformationAboutTheAccount
        End If

     End With

Open in new window

Hello everybody, I'm a beginner of and I face this problem ....
how data grid view on click display a data of another table that doesn't link to it..the 2 pictures indicate the problem obviously.
i'm using MS Access 2013 as a database
thanks in advance.................................

Want to show just the date in a qry  but the below does not show just today's date, using Now shows just the current date and time...but only wan the date for today only...


Microsoft Access





Microsoft Access is a rapid application development (RAD) relational database tool. Access can be used for both desktop and web-based applications, and uses VBA (Visual Basic for Applications) as its coding language.