Exel如何从一个MERGED单元格运行一个macros

我有一个macros,单击单元格时显示日历。 我的问题是,当这个单元格与另一个单元格合并时,我不能运行相同的macros。 我尝试过为每个细胞select个体或制作一系列细胞。 这两个选项都没有工作。

我的问题是如何编码合并单元格为了运行一个macros。 我的代码:

Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Selection.Count = 1 Then If Not Intersect(Target, Range("K12")) Is Nothing Then Call SHOWCALENDAR End If End If End Sub 

Selection.count将返回合并单元格中所有单元格的计数,因此对于合并的单元格,它将大于1。 删除计数条件和代码将运行良好。

合并的细胞引起各种头痛,应该避免。 如果单元格跨多列合并,请考虑使用格式设置“center across selection”。

或者你可以简单地尝试这个…

 Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Cells(1).Address(0, 0) = "K12" Then Call SHOWCALENDAR End If End Sub