【发布时间】:2019-02-15 15:16:10
【问题描述】:
拔下显示器后获取Target.Top 或“ActiveCell.Top”的正确值。
当我运行这个宏时,我得到了正确的 Target.Top 值。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
MsgBox Target.Top
End Sub
拔掉显示器后,我的笔记本电脑分辨率不同,小很多但返回值保持不变。程序没有注意到分辨率改变并返回与以前相同的值的事实,这是错误的。我无法使用代码:
ActiveSheet.OLEObjects("TempCombo").Top=Target.Top
定位组合框,因为它位于错误的位置。
有没有办法重置Target.Top(分辨率)值?
【问题讨论】:
-
Excel 距离以points 为单位,即 1/72 英寸。该值不应取决于分辨率。
-
@GSerg Target.Top 值在切换监视器后不会改变。如果确实是每英寸点数,那么更换显示器应该不会对定位对象产生负面影响。
-
单位是缇而不是我认为的点,但可能是点的子/超。是的,它们是独立于屏幕的,所以在切换显示器后不要改变
标签: excel vba screen-resolution