Is there a way to size the Access application window in Access 97 in VBA? I want to be able to set it the application window to be the same size as the “main” form that I have open at the beginning (so it would run in the Form_Load event).
![]() |
Patch reliability is unclear. Unless you have an immediate, pressing need to install a specific patch, don't do it. |
SIGN IN | Not a member? | REGISTER | PLUS MEMBERSHIP |
-
Sizing Access Window (Access 97)
Home » Forums » AskWoody support » Productivity software by function » MS Access and database help » Sizing Access Window (Access 97)
- This topic has 6 replies, 4 voices, and was last updated 23 years, 4 months ago.
AuthorTopicWSGeorge24
AskWoody LoungerFebruary 6, 2002 at 8:01 pm #366539Viewing 1 reply threadAuthorReplies-
WScharlotte
AskWoody LoungerFebruary 7, 2002 at 3:37 am #568807 -
WSready4data
AskWoody LoungerFebruary 7, 2002 at 10:34 am #568843Here is a routine that opens your forms and centers them on the screen.
Place this in the declarations section of a module
Global g_ScreenWidth As Integer ‘ Screen width for CenterForm sub
Global g_ScreenHeight As Integer ‘ Screen height for CenterForm subHere is the function:
Sub CenterForm(p_Width As Integer, p_Height As Integer)
‘ Arguments are in twips where 1 inch = 1440 twips
‘ If form has title bar, add 240 twips to height argument
‘
‘ Resolution Dimensions Title Bar, Menu Bar, and Tool Bar):
‘
‘ Resolution ScreenWidth ScreenHeight
‘ 640×480 9600 5720
‘ 600×800 12000 7400Dim ScreenWidth As Integer
Dim ScreenHeight As Integer
Dim VertPos As Integer
Dim HorPos As Integer‘ Set ScreenWidth & ScreenHeight according to resolution (see table above)
ScreenWidth = 12000
ScreenHeight = 7400If p_Height > ScreenHeight Then
VertPos = 0
Else
VertPos = (ScreenHeight – p_Height) / 2
End IfIf p_Width > ScreenWidth Then
HorPos = 0
Else
HorPos = (ScreenWidth – p_Width) / 2
End IfDoCmd.MoveSize HorPos, VertPos, p_Width, p_Height
End Sub
Then in the OnOpen Event of the form use
CenterForm 2880, 2880 ‘If your form was 2″ x 2″ -
WSGeorge24
AskWoody LoungerFebruary 7, 2002 at 3:55 pm #568912Thanks Charlotte and ready4data for the replies. However, what I’m looking for and can’t seem to find *anywhere* is how to control the main Access window with code. I manage about 12 databases, some requiring more screen real estate than others and I’d like to set the windows according to the needs of each one, if that’s possible, instead of having to manually resize the window each time one opens up. I believe it has something to do with the hWndAccessApp property or the hWnd property, and then some declarations to some Windows API’s (I’m on NT btw), but even Google came up with only resizing the forms. And my VBA skills are limited pretty much to Access…the fog tends to set in when API calls are required. But I’m willing to work through whatever is required.
Thanks everyone.
-
WSGeorge24
AskWoody LoungerFebruary 7, 2002 at 4:40 pm #568923Well, darn it, I couldn’t leave it alone and I found the answer…with a search on Google on the words “hWndAccessApp” and “resize” . For the record here it is:
‘======================================================
‘start of code in moduleOption Compare Database
Option ExplicitDeclare Sub SetWindowPos Lib “User32” (ByVal hWnd&, _
ByVal hWndInsertAfter&, _
ByVal X&, ByVal Y&, ByVal cX&, _
ByVal cY&, ByVal wFlags&)Global Const HWND_TOP = 0 ‘Moves MS Access window to top of Z-order.
‘Values for wFlags.
Global Const SWP_NOZORDER = &H4 ‘Ignores the hWndInsertAfter.Public Function SizeAccess(cLeft As Long, cTop As Long, cWidth As Long, cHeight As Long) As Boolean
On Error GoTo SizeAccess_Err
Dim h As Long‘Get handle to Microsoft Access.
h = Application.hWndAccessApp‘Position Microsoft Access.
SetWindowPos h, HWND_TOP, cLeft, cTop, cWidth, cHeight, SWP_NOZORDER
SizeAccess = TrueSizeAccess_Exit:
Exit FunctionSizeAccess_Err:
MsgBox Err.Number & “: ” & Err.description
SizeAccess = False
GoTo SizeAccess_ExitEnd Function
‘End of code
‘======================================================The function SizeAccess can be called from any event.
The source of this solution comes from MS itself in its Knowledgebase article :
“ACC: How to Position Microsoft Access on the Screen (95/97) (Q148856)”
The end.
-
WSAndyAinscow
AskWoody LoungerFebruary 8, 2002 at 7:38 am #569077The following might be useful for you.
Declare Function GetDeviceCaps Lib “gdi32” (ByVal hdc As Long, ByVal nIndex As Long) As Long
Declare Function GetDC Lib “user32” (ByVal hwnd As Long) As LongPublic Function GetScreenXResolution() As Long
Const HORZRES = 8 ‘ Horizontal width in pixels
Dim ScreenHDC As Long
ScreenHDC = GetDC(0)GetScreenXResolution = GetDeviceCaps(ScreenHDC, HORZRES)
End FunctionPublic Function GetScreenYResolution() As Long
Const VERTRES = 10 ‘ Vertical width in pixels
Dim ScreenHDC As Long
ScreenHDC = GetDC(0)GetScreenYResolution = GetDeviceCaps(ScreenHDC, VERTRES)
End Function -
WSGeorge24
AskWoody Lounger
-
-
-
-
Viewing 1 reply thread -

Plus Membership
Donations from Plus members keep this site going. You can identify the people who support AskWoody by the Plus badge on their avatars.
AskWoody Plus members not only get access to all of the contents of this site -- including Susan Bradley's frequently updated Patch Watch listing -- they also receive weekly AskWoody Plus Newsletters (formerly Windows Secrets Newsletter) and AskWoody Plus Alerts, emails when there are important breaking developments.
Get Plus!
Welcome to our unique respite from the madness.
It's easy to post questions about Windows 11, Windows 10, Win8.1, Win7, Surface, Office, or browse through our Forums. Post anonymously or register for greater privileges. Keep it civil, please: Decorous Lounge rules strictly enforced. Questions? Contact Customer Support.
Search Newsletters
Search Forums
View the Forum
Search for Topics
Recent Topics
-
Excessive security alerts
by
WSSebastian42
3 hours, 29 minutes ago -
* CrystalDiskMark may shorten SSD/USB Memory life
by
Alex5723
4 hours, 18 minutes ago -
Ben’s excellent adventure with Linux
by
Ben Myers
15 minutes ago -
Seconds are back in Windows 10!
by
Susan Bradley
5 hours, 29 minutes ago -
WebBrowserPassView — Take inventory of your stored passwords
by
Deanna McElveen
1 hour, 21 minutes ago -
OS news from WWDC 2025
by
Will Fastie
5 hours, 32 minutes ago -
Need help with graphics…
by
WSBatBytes
4 hours, 12 minutes ago -
AMD : Out of Bounds (OOB) read vulnerability in TPM 2.0 CVE-2025-2884
by
Alex5723
19 hours, 45 minutes ago -
Totally remove or disable BitLocker
by
CWBillow
18 hours, 39 minutes ago -
Windows 10 gets 6 years of ESU?
by
n0ads
6 hours, 34 minutes ago -
Apple, Google stores still offer China-based VPNs, report says
by
Nibbled To Death By Ducks
1 day, 6 hours ago -
Search Forums only bring up my posts?
by
Deo
1 day, 6 hours ago -
Windows Spotlight broken on Enterprise and Pro for Workstations?
by
steeviebops
1 day, 18 hours ago -
Denmark wants to dump Microsoft for Linux + LibreOffice
by
Alex5723
1 day, 10 hours ago -
How to get Microsoft Defender to honor Group Policy Setting
by
Ralph
1 day, 18 hours ago -
Apple : Paragon’s iOS Mercenary Spyware Finds Journalists Target
by
Alex5723
2 days, 4 hours ago -
Music : The Rose Room – It’s Been A Long, Long Time album
by
Alex5723
2 days, 6 hours ago -
Disengage Bitlocker
by
CWBillow
1 day, 20 hours ago -
Mac Mini M2 Service Program for No Power Issue
by
Alex5723
2 days, 8 hours ago -
New Win 11 Pro Geekom Setup questions
by
Deo
1 day, 6 hours ago -
Windows 11 Insider Preview build 26200.5651 released to DEV
by
joep517
2 days, 15 hours ago -
Windows 11 Insider Preview build 26120.4441 (24H2) released to BETA
by
joep517
2 days, 15 hours ago -
iOS 26,, MacOS 26 : Create your own AI chatbot
by
Alex5723
2 days, 19 hours ago -
New PC transfer program recommendations?
by
DaveBoston
1 day ago -
Windows 11 Insider Preview Build 22631.5545 (23H2) released to Release Preview
by
joep517
2 days, 23 hours ago -
Windows 10 Build 19045.6029 (22H2) to Release Preview Channel
by
joep517
2 days, 23 hours ago -
Best tools for upgrading a Windows 10 to an 11
by
Susan Bradley
2 days, 11 hours ago -
The end of Windows 10 is approaching, consider Linux and LibreOffice
by
Alex5723
1 day, 15 hours ago -
Extended Windows Built-in Disk Cleanup Utility
by
bbearren
2 days ago -
Win 11 24H2 June 2025 Update breaks WIFI
by
dportenlanger
3 days, 18 hours ago
Recent blog posts
- Ben’s excellent adventure with Linux
- Seconds are back in Windows 10!
- WebBrowserPassView — Take inventory of your stored passwords
- OS news from WWDC 2025
- Best tools for upgrading a Windows 10 to an 11
- Master patch listing for June 10, 2025
- 24H2 may not be offered June updates
- June 2025 updates are out
Key Links
Want to Advertise in the free newsletter? How about a gift subscription in honor of a birthday? Send an email to sb@askwoody.com to ask how.
Mastodon profile for DefConPatch
Mastodon profile for AskWoody
Home • About • FAQ • Posts & Privacy • Forums • My Account
Register • Free Newsletter • Plus Membership • Gift Certificates • MS-DEFCON Alerts
Copyright ©2004-2025 by AskWoody Tech LLC. All Rights Reserved.