A common Access problem when rolling out Access applications to users is differences in screen sizes and monitor resolutions.
I have one client in particular that generally uses 1920 x 1080 resolution for most of their users, but the boss uses multiple monitors at an extreme 3840 x 2160 4k resolution.
The difference between the two is that when you maximize the application, if the form is designed for a smaller resolution, it will look tiny on the 4k screen, but if you do the opposite and design for the 4k screen, the controls are huge and are easily hidden for the smaller resolution computers.
So what to do when you are designing forms for multiple monitor sizes? How do you consider both users and make a form that will be usable for each resolution? (Or more, if a company allows users to choose any resolution they wish?)
Strategies for Designing Responsive Access Forms
- Use Anchoring and Docking:
- Anchoring: This feature allows controls to maintain their position relative to the form’s edges. For example, you can anchor a button to the bottom-right corner, ensuring it stays in place regardless of the form size.
- Docking: Docking allows controls to stretch and fill the form. For instance, a text box can be docked to fill the entire form, adjusting its size dynamically.
- Dynamic Resizing with VBA:
- Write VBA code to dynamically resize and reposition controls based on the form’s current size. This approach can be more complex but offers precise control over the layout.
- There are a number of Access consultants and professionals who have created both free and pay plugins to help resize the controls so they are consistently zoomed in for larger resolutions and shrink for smaller resolutions. Access JumpStart has functions in it’s library for doing this.
- Use Layout Guides:
- Access provides layout guides that help in aligning and resizing controls. Use these guides to create a flexible layout that adapts to different screen sizes.
- Using this in combination with the Anchoring and Docking mentioned already is a way to zoom sizes and reposition controls automatically. It’s similar to laying out column/grid structures for web sites. Each column and row has cells that will contain the controls. It can be similar to formatting Excel spreadsheets by merging columns and resizing row and column widths.
- Consider Using Subforms:
- Break down complex forms into subforms. Subforms can be more easily managed and resized, providing a more responsive user experience.
- For continuous subforms on a main form, Access JumpStart has a routine to resize the subform based on the number of displayed records.
- Test on Multiple Resolutions:
- Regularly test your forms on different screen resolutions to ensure they look and function correctly. This helps identify and fix issues early in the development process. Although this is a pain to do often, you should definitely consider doing this before finalizing the form and sending it out to users. Often this can be done simply by maximizing the form in your Access window and resizing that to various sizes to see how it looks.
- User Feedback:
- Gather feedback from users with different screen setups. Their insights can help you make necessary adjustments to improve usability.
Conclusion
Designing Microsoft Access forms that work well on various screen sizes and resolutions can be challenging, but with the right strategies, you can create a responsive and user-friendly application. By using features like anchoring, docking, and dynamic resizing, and by testing thoroughly, you can ensure that your forms provide a consistent experience for all users, regardless of their monitor setup.