微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

私有子工作表_更改 VBA 代码合并问题

如何解决私有子工作表_更改 VBA 代码合并问题

我正在使用以下代码根据“Sheet1”“B2”和 VICE VERSA 中的值更改“Sheet2”“D2”值。但他们没有一起工作。如果我单独使用它们,那么两种编码都可以完美运行。我怎样才能纠正他们一起表演?

“表 1”

byte[] bRPM = Encoding.Ascii.GetBytes($"{RPMMove}\r\n");

“Sheet2”

Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target,Range("B2")) Is nothing Then
    Select Case Target.Value
    Case Is = "Included": Worksheets("Sheet2").Range("D2") = Target.Value
    Case Is = "Excluded": Worksheets("Sheet2").Range("D2") = Target.Value
    End Select
    End If
End Sub

解决方法

来自上面的评论:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim rng As Range,v
    
    Set rng = Intersect(Target,Me.Range("B2"))
    
    If Not rng Is Nothing Then
        v = Target.Value
        If v = "Included" Or v = "Excluded" Then
            On Error GoTo haveError           'set up error handling
            Application.EnableEvents = False  'disable events
            ThisWorkbook.Worksheets("Sheet2").Range("D2") = v
            Application.EnableEvents = True   're-enable events
        End If
    End If
    Exit Sub 'normal exit
    
haveError:
    Application.EnableEvents = True 'make sure events not left turned off
    
End Sub

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。