首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >在单元格值发生更改时创建弹出窗口

在单元格值发生更改时创建弹出窗口
EN

Stack Overflow用户
提问于 2013-06-17 21:34:30
回答 2查看 684关注 0票数 1

我写了一个简单的宏

代码语言:javascript
运行
复制
=IF(C2=H2,1,))

因此,每当C2的值等于H2的值时,就会弹出一个窗口,上面写着"HI“

代码语言:javascript
运行
复制
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    Dim rng As Range
    Set rng = Range("H2")
    If Not Intersect(Target, rng) Is Nothing Then
        If rng = "1" Then
            MsgBox "Cell " & _
                   rng.Address & " = hi"
        End If
    End If

    Set rng = Nothing
End Sub

问题是,我需要它来使声音以及弹出,更重要的是,我需要它做1000行(即。c2,c3,c4 so to c1000)。不要告诉我我需要粘贴和复制上千次。

EN

回答 2

Stack Overflow用户

发布于 2013-06-17 21:59:54

很难理解你到底想要实现什么,因为你的问题不是很清楚。如果我理解正确,当H列中的值发生更改时,您可能希望检查它是否与C列中的相应单元格匹配。如果这些值匹配,您希望显示一个消息框并播放声音。这段代码完全可以做到这一点。

代码语言:javascript
运行
复制
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
    On Error Resume Next
    If Target.Column = 8 Then
        If Target.Value = Target.Offset(0, -5).Value Then
            Beep
            MsgBox "Cell " & Target.Address(False, False) & " = Hi"
        End If
    End If
    On Error GoTo 0
End Sub
票数 1
EN

Stack Overflow用户

发布于 2013-06-17 22:03:43

尝尝这个

代码语言:javascript
运行
复制
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Whoa

    Application.EnableEvents = False

    If Not Intersect(Target, Range("C2:C1000")) Is Nothing Then
        If Target.Value = Target.Offset(, 5).Value Then
            Beep
            MsgBox "Blah Blah"
        End If
    '~~> Added Code to handle changes in Col H as well. Thanks to ripster
    ElseIf Not Intersect(Target, Range("H2:H1000")) Is Nothing Then
        If Target.Value = Target.Offset(, -5).Value Then
            Beep
            MsgBox "Blah Blah"
        End If
    End If

Letscontinue:
    Application.EnableEvents = True
    Exit Sub
Whoa:
    MsgBox Err.Description
    Resume Letscontinue
End Sub

我总是建议使用适当的错误处理。您可能还想看看this

如果有多次粘贴,上面的代码不能处理这种情况。如果你也想检查一下,请告诉我:)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17148829

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档