473,388 Members | 1,002 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,388 software developers and data experts.

Changing Background Color Theme in Access 2016

489 256MB
I've installed Office 365 and when I bring up Access the back ground color is White, I've looked in the File, Account, but when I click on the Office Theme I only get two choices Colorful, White, no matter what I choose I only get the white. In Access 2007 I had the I had a choice of Blue Silver or Black.
How do I get my Blue back in Access 2016 any ideas.

Jan 18 '16 #1
2 15552
5,501 Expert Mod 4TB
Welcome to the new MS paradigm
MS> What's New and Improved in Office 2016 for Office 365 (read more)
Office Themes

In Word, PowerPoint, Excel, OneNote, Outlook, Access, Project, Visio, and Publisher

Pick the Office theme that's right for you. The Dark Gray theme provides a high contrast look and feel that is easy on the eyes. The Colorful theme offers a modern and fresh look. The White theme provides a traditional Office look.

Learn more about changing the Office theme (read more)
The choices you have are the choices you have unless you can possibly find a hack... and people have been trying without much success, especially with Office360 where MS has total control of every file and setting you can possibly think of...

This is a continuation of the madness started with Office2013 where we had "White" "Light Grey" and "Dark Grey"

All you can do is complain to Microsoft, who appears to not care one whit about the end users' preferences. In one thread alone, there are 22 pages of complaints spanning from 2013 thru just last month, in the Microsoft Answers forum alone about this particular, "feature" for Office2013 and there are many more such threads and one already for Office2016.
Jan 18 '16 #2
While you can't change the background color, I've come up with a solution that effectively allows you to change the background color.

First, I've created a new form called "background" that is completely empty, very large (large enough to fill the screen of your largest monitor), and has a dark gray background. It is not modal or popup, it auto resizes and centers, fits to screen, has no borders, record selectors, navigation buttons, dividing lines, scroll bars, control button, close button, or min max button, and it is not movable. All it has a little bit of VBA in its On Got Focus property:

Expand|Select|Wrap|Line Numbers
  1. Private Sub Form_GotFocus()
  2.   Dim db As DAO.Database
  3.   Dim rst As DAO.Recordset
  4.   Set db = CurrentDb
  5.   Set rst = db.OpenRecordset("SELECT ID, FormName, FrmRpt FROM FormStack ORDER BY ID", dbOpenSnapshot)
  6.   If rst.EOF Then
  7.     DoCmd.OpenForm "frmMenu"
  8.   Else
  9.     While Not rst.EOF
  10.       If rst.Fields("FrmRpt") = "Form" Then
  11.         If FormIsOpen(rst.Fields("FormName")) Then
  12.           Forms(rst.Fields("FormName")).SetFocus
  13.         Else
  14.           Call CloseFormStack(rst.Fields("FormName"))
  15.         End If
  16.       Else
  17.         If ReportIsOpen(rst.Fields("FormName")) Then
  18.           DoCmd.SelectObject acReport, rst.Fields("FormName")
  19.         Else
  20.           Call CloseFormStack(rst.Fields("FormName"))
  21.         End If
  22.       End If
  23.       rst.MoveNext
  24.     Wend
  25.   End If
  26.   rst.Close
  27.   Set rst = Nothing
  28. End Sub
NOTE: the line
Expand|Select|Wrap|Line Numbers
  1. DoCmd.OpenForm "frmMenu"
will open my menu form if no other form or report is open. Doing this is of course optional and you would want to change the name of the form that it opens.

I also created a table named "FormStack" that has the following fields:
ID (long integer, primary key)
FormName (short text)
FrmRpt (short text)

As for the other code which is saved in a separate module:

Expand|Select|Wrap|Line Numbers
  1. Public Sub FormStack(fName As String, frmrpt As String)
  2.   Dim sSQL As String
  3.   sSQL = "DELETE * FROM [FormStack] WHERE [FormName] = '" & fName & "'"
  4.   DoCmd.RunSQL (sSQL)
  5.   Dim Temp As Integer
  6.   Temp = 1
  7.   Dim db As DAO.Database
  8.   Dim rst As DAO.Recordset
  9.   Set db = CurrentDb
  10.   Set rst = db.OpenRecordset("SELECT [ID], [FormName] FROM [FormStack] ORDER BY [ID]", dbOpenSnapshot)
  11.   With rst
  12.     While Not .EOF
  13.       Temp = ![id] + 1
  14.       .MoveNext
  15.     Wend
  16.   End With
  17.   rst.Close
  18.   Set rst = Nothing
  19.   sSQL = "INSERT INTO [FormStack] ([ID], [FormName], [FrmRpt]) VALUES (" & Temp & ", '" & fName & "', '" & frmrpt & "')"
  20.   DoCmd.RunSQL (sSQL)
  21. End Sub
  23. Public Sub CloseFormStack(fName As String)
  24.   Dim sSQL As String
  25.   sSQL = "DELETE * FROM [FormStack] WHERE [FormName] = '" & fName & "'"
  26.   DoCmd.RunSQL (sSQL)
  27. End Sub
  29. Public Function FormIsOpen(strForm As String) As Boolean
  30.     Dim a As String
  31.     Dim Frm As Form
  33.     On Error GoTo ErrHandler
  35.     Set Frm = Forms(strForm)
  36.     a = Frm.Caption
  38.     FormIsOpen = True
  40. FormIsOpenExit:
  41.     Exit Function
  43. ErrHandler:
  44.     FormIsOpen = False
  45.     Resume FormIsOpenExit
  47. End Function
After this you need to insert the following code into every forms (but NOT subforms) Activate, On Open and On Close events:

Expand|Select|Wrap|Line Numbers
  1. Private Sub Form_Activate()
  2.   Call FormStack("frmName", "Form")
  3. End Sub
  5. Private Sub Form_Close()
  6.   Call CloseFormStack("frmName")
  7. End Sub
  9. Private Sub Form_Open(Cancel As Integer)
  10.   Call FormStack("frmName", "Form")
  11. End Sub
And for reports (but NOT subreports) this code:

Expand|Select|Wrap|Line Numbers
  1. Private Sub Report_Activate()
  2.   Call FormStack("rptName", "Report")
  3. End Sub
  5. Private Sub Report_Close()
  6.   Call CloseFormStack("rptName")
  7. End Sub
  9. Private Sub Report_Open(Cancel As Integer)
  10.   Call FormStack("rptName", "Report")
  11. End Sub
Of course you can still have other code in these events as well. And you will have to put in the correct name of each form or report.

What all this code will do is ensure that your forms and reports are always on top of the background form. Should you ever accidentally click the background form, it will restore focus to every open form or report in the appropriate order (in other words, you are effectively sending the background to the back).

Now this isn't without a few problems. First, this code will not work with tables or queries. If a table or query is open and you click on the background, they will wind up forever beneath the background, the only way to get it back is to open it from the Navigation Pane again. I consider this a minor problem as your end users should only be working with forms and reports, but it is a bit of a pain for a developer. The other problem is that you want the background to cover the entire background, and you don't know how large the end users monitor will be, so it is wise to make the background form excessively large. While scroll bars will be disabled on the background form, they are not disabled in Access itself, and since the background is larger than the access window, you will wind up with scroll bars in your access window. Luckily your scroll wheel on your mouse does not effect these scroll bars, and I've had no one complain about to me in the month that we have been using the application so this too I consider a minor issue.
Nov 30 '18 #3

Sign in to post your reply or Sign up for a free account.

Similar topics

by: DS | last post by:
How do you change the backgroung color and Menu bar colors in access so that its different from he default color in windows. This is for Access only, I want the other programs to match the default...
by: Jean | last post by:
Hello, I have just read through the MS Access Security FAQ, and had a go at securing my database, but now I am stuck. I successfully set up a new .mdw file, say DEPARTMENT.MDW. With this...
by: pradeep | last post by:
Is is possible to to change the background color of TabControl Widget. I am not finding the corresponding property in properties toolbar. thank you pradeep
by: Johanna | last post by:
Hello, Thread was being aborted exception is thrown by my asp.net application. I hope someone could help me with this error that I get in windows 2003 server. This error has not occured with...
by: Teemu | last post by:
I'm wondering if there is a easy way to change for example toolstrips appearance. I'd like to have the same theme as in VB2005. Brown backgroung instead of the light blue. Can this be done without...
by: mcnewsxp | last post by:
how can i set a back ground image property on an MDI main form to stretch?
by: rpapaiof | last post by:
i want to know is there any command to put many colors for html page background or a pic im a beginer plz help me
by: James | last post by:
When property 'Enabled' is set to 'false', the text back ground color always turn to gray. Can I change this color? From http://developmentnow.com/g/36_2003_7_0_0_0/dotnet-languages-csharp.htm ...
by: davehirend | last post by:
i have porblem for change the back ground of the TextBox in ASP.NET 2.0
by: iheartvba | last post by:
Hi How can I make a user panel where they can choose a color for all the forms in an Access database. I have made a table with all the user names and it has a field for color which can store their...
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.