繁体   English   中英

结合 3 个私有子工作表_Change

[英]Combining 3 Private Sub Worksheet_Change

我是第一次发帖,也是 VBA 的新手。所以我希望我说得通:)我正在尝试组合 3 个私人潜艇,但不确定如何将它们编码在一起。

我有一个具有数据验证功能的电子表格,我希望根据所选内容显示一个输入框。

在“I”列是第一组数据验证,有接受,拒绝和Null无效的选项,如果“接受”则没有,但如果拒绝或无效的Null,我希望出现一个弹出框用户输入 $0,并将其传递到“D”列

在“M”列中是下一个用于数据验证的列,唯一的选项是空白和完整。 如果空白则什么都没有,但如果完成,我想弹出一个窗口供用户输入报价值,然后将其传递到“D”列。

先感谢您。

这是我的代码

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("I:I")) Is Nothing Then
        If Target = "Declined" Then
            roww = Target.Row
            Application.EnableEvents = False
                Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value to 0", Type:=2)
            Application.EnableEvents = True
        End If
    End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("I:I")) Is Nothing Then
        If Target = "Null in Void" Then
            roww = Target.Row
            Application.EnableEvents = False
                Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value to 0", Type:=2)
            Application.EnableEvents = True
        End If
    End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)

    If Not Intersect(Target, Range("M:M")) Is Nothing Then
        If Target = "Complete" Then
            roww = Target.Row
            Application.EnableEvents = False
                Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value to the Quotation Value", Type:=2)
            Application.EnableEvents = True
        End If
    End If
End Sub
Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("M:M")) Is Nothing Then
        If Target = "Complete" Then
            roww = Target.Row
            Application.EnableEvents = FALSE
            Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value To the Quotation Value", Type:=2)
            Application.EnableEvents = TRUE
        End If
    ElseIf Not Intersect(Target, Range("I:I")) Is Nothing Then
        If Target = "Declined" Then
            roww = Target.Row
            Application.EnableEvents = FALSE
            Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value To 0", Type:=2)
            Application.EnableEvents = TRUE
        ElseIf Target = "Null in Void" Then
            roww = Target.Row
            Application.EnableEvents = FALSE
            Cells(roww, "D").Value = Application.InputBox(Prompt:="Updated quoted value To 0", Type:=2)
            Application.EnableEvents = TRUE
        End If
    End If
End Sub

请参阅此官方文档

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM