小编Chr*_*sen的帖子

通过删除合并单元格的内容触发 Worksheet_Change

我编写了一段代码,当单元格 L3 更改时,它会根据 L3 的内容依次更改一系列单元格。

\n\n

L3 是一个从 L3 到 N4 的合并单元格,尽管如此,代码仍然可以正常工作,直到用户删除内容而不是输入新内容。

\n\n

以下代码对于未合并的单元格工作得非常好:

\n\n
Sub Worksheet_Change(ByVal Target As Range)\n\n        If Target.Address = Range("L3").Address Then\n\n             If Range("L3") = Sheets("Formatering").Range("F27") Then\n                 Tankpladser = "V\xc3\xa6lg Tank"\n\n             ElseIf Range("L3") = Sheets("Formatering").Range("F28") Then\n                 Range("E11") = Sheets("Formatering").Range("L3")\n                 Range("G11") = Sheets("Formatering").Range("L4")\n                 Range("I11") = Sheets("Formatering").Range("L5")\n                 Range("K11") = Sheets("Formatering").Range("L6")\n            ElseIf Range("L3") = "" Then\n                 Range("E11:E12,G11:G12,I11:I12,K11:K12").ClearContents\n            End If\n        End If\nEnd Sub\n
Run Code Online (Sandbox Code Playgroud)\n\n

问题是 Range("L3") 是一个合并单元格,实际上是 Range("L3:N4")。这会在删除单元格内容后检查单元格是否为空白时出现问题。

\n\n

我现在正在寻找一种方法来完成这项工作:

\n\n
ElseIf Range("L3").MergeArea.Cells(1,1).Value = "" Then\n    Range("E11:E12,G11:G12,I11:I12,K11:K12") = ""\nEnd If\n
Run Code Online (Sandbox Code Playgroud)\n

excel vba

3
推荐指数
1
解决办法
778
查看次数

标签 统计

excel ×1

vba ×1