2012-08-07 23 views

回答

6

对于Access 2010 64位,您需要在Function之前添加PtrSafe

Declare Function GetSystemMetrics32 Lib "User32" _ 
    Alias "GetSystemMetrics" (ByVal nIndex As Long) As Long 

Sub ScreenRes() 
Dim w As Long, h As Long 
    w = GetSystemMetrics32(0) ' width in points 
    h = GetSystemMetrics32(1) ' height in points 

End Sub 

更多信息:http://support.microsoft.com/kb/210603

0

对于VBA,一个简单的(因此可能更便携)的解决方案可能是:

Application.UsableHeight 
Application.UsableWidth 

截至Adjust userforms to fit in screen发现。我在Word 2007 VBA中成功使用了此功能。在我的情况下,Application.UsableWidth给出了实际的屏幕宽度,Application.UsableHeight给出了实际的屏幕高度,减去Windows任务栏的高度。

+0

这是在MS Word中使用的巧妙方式,但在MS Access 2013中,.UsableWidth属性似乎不存在。不过,如果它确实会很好。 – DRC 2017-11-03 12:11:46

相关问题