首页 > 解决方案 > excel合并单元格中下拉列表的自动扩展

问题描述

我有一些带有数据验证下拉列表的合并单元格我尝试了以下方法使它们在聚焦时自动扩展它适用于单个单元格,但是当我尝试应用于合并单元格时,写入它们的范围不起作用。

在 Excel 下拉选项卡后聚焦,自动显示列表以供选择

第一个代码

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Err1:

If Target = Range("d10") Then
    Application.SendKeys ("%{UP}")
End If Err1:
'do nothing     End Sub

[效果很好][1]

当我合并单元格时它不起作用,即使我尝试将范围更改为所有合并的单元格它也不起作用。

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
On Error GoTo Err1:

If Target = Range("d10:n10") Then
    Application.SendKeys ("%{UP}")
End If   Err1: 'do nothing    End Sub

知道如何使它工作吗?

提前致谢。

标签: excelvba

解决方案


合并单元格会导致各种问题,应该避免。你可以使用

If Target.Address = "$A$1:$C$3" Then

或者更好

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
    MsgBox "merged cells are bad for your health"
End If

End Sub

在此处输入图像描述


推荐阅读