Excel 用户表单启动位置

Excel 用户表单启动位置,excel,vba,Excel,Vba,我在excel中弹出了一个不错的日历,并使用以下工具测试了UserForm位置: .Top=Application.Top+125 .Left=应用程序。Left+125 这是伟大的作品,但我真正想要的是有一个窗体弹出旁边的活动单元格 我在下面尝试的方法不起作用,我不知道为什么。我希望表单的左上角接触活动单元格的右上角,但是表单最终覆盖了活动单元格 .Top=ActiveCell.Top .Left=ActiveCell.Left+ActiveCell.Width 有什么建议吗?正如您所期望

我在excel中弹出了一个不错的日历,并使用以下工具测试了UserForm位置:

.Top=Application.Top+125
.Left=应用程序。Left+125

这是伟大的作品,但我真正想要的是有一个窗体弹出旁边的活动单元格

我在下面尝试的方法不起作用,我不知道为什么。我希望表单的左上角接触活动单元格的右上角,但是表单最终覆盖了活动单元格

.Top=ActiveCell.Top
.Left=ActiveCell.Left+ActiveCell.Width


有什么建议吗?

正如您所期望的那样,这对我很有用:

    .Top = ActiveCell.Top + ActiveCell.Height / 2 + .Height
    .Left = ActiveCell.Left + ActiveCell.Width * 1.5
还不错

If Application.Version = "11.0" Then
Me.Top = Application.Top + [b7].Top + 70 - Windows(1).VisibleRange.Top
Else
Me.Top = Application.Top + [b7].Top - 4 +  (Application.CommandBars.Item("Ribbon").Height * 0.75) - Windows(1).VisibleRange.Top
End If
Me.Left = Application.Left + [b7].Left + 90 - Windows(1).VisibleRange.Left