Vba 在板中应用Comparison,即使两行不在一起 #早上好#

Vba 在板中应用Comparison,即使两行不在一起 #早上好#,vba,excel,Vba,Excel,这是我的董事会: 我的工作是比较每一行。当C列不同时,没有问题。 但当它们相同时(如第15行和第16行),我需要比较E之后的D列 这是我的代码: Sub Macro2() If Range("C15") = Range("C16") Then 'call spread If Range("D15") = Range("D16") Then 'Date If Range("E15") = Range("E16") Then

这是我的董事会:

我的工作是比较每一行。当C列不同时,没有问题。 但当它们相同时(如第15行和第16行),我需要比较E之后的D列

这是我的代码:

Sub Macro2()

If Range("C15") = Range("C16") Then


        'call spread

        If Range("D15") = Range("D16") Then    'Date
            If Range("E15") = Range("E16") Then    'Call / put
                     Range("K2") = "call/put spread"    'nom de la strat
            End If
        End If



        'risk reversal

        If Range("D15") = Range("D16") Then    'Date
            If Range("E15") <> Range("E16") Then    'Call / put
                If Range("F15") <> Range("F16") Then    'prix
                    If Range("G15") = Range("G16") Then    'heure
                             Range("K2") = "risk reversal"    'nom de la strat
                    End If
                End If
            End If
        End If



        'Synthetics

        If Range("D15") = Range("D16") Then    'Date
            If Range("E15") <> Range("E16") Then    'Call / put
                If Range("F15") = Range("F16") Then    'prix
                    If Range("G15") = Range("G16") Then    'heure
                             Range("K2") = "Synthetics"    'nom de la strat
                    End If
                End If
            End If
        End If


        'calls/puts calandar

        If Range("D15") <> Range("D16") Then    'Date
            If Range("E15") = Range("E16") Then    'Call / put
                If Range("F15") <> Range("F16") Then    'prix
                    If Range("G15") = Range("G16") Then    'heure
                             Range("K2") = "calls/puts calandar"    'nom de la strat
                    End If
                End If
            End If
        End If


    End If
End sub
Sub-Macro2()
如果范围(“C15”)=范围(“C16”),则
“通话间隔
如果范围(“D15”)=范围(“D16”),则“日期”
如果范围(“E15”)=范围(“E16”),则“调用/放置”
范围(“K2”)=“买入/卖出价差”诺姆德拉斯特拉特
如果结束
如果结束
“风险逆转
如果范围(“D15”)=范围(“D16”),则“日期”
如果范围(“E15”)范围(“E16”),则“调用/放置”
如果范围(“F15”)范围(“F16”)那么“prix”
如果范围(“G15”)=范围(“G16”),则
范围(“K2”)=“风险逆转”nom de la strat
如果结束
如果结束
如果结束
如果结束
“合成材料
如果范围(“D15”)=范围(“D16”),则“日期”
如果范围(“E15”)范围(“E16”),则“调用/放置”
如果范围(“F15”)=范围(“F16”),则“prix”
如果范围(“G15”)=范围(“G16”),则
范围(“K2”)=“合成物”名称
如果结束
如果结束
如果结束
如果结束
“呼叫/放置calandar
如果范围(“D15”)范围(“D16”)那么“日期”
如果范围(“E15”)=范围(“E16”),则“调用/放置”
如果范围(“F15”)范围(“F16”)那么“prix”
如果范围(“G15”)=范围(“G16”),则
范围(“K2”)=“调用/放置calandar”nom de la strat
如果结束
如果结束
如果结束
如果结束
如果结束
端接头

它工作得很好,但是当行之间不一致时,如何处理呢?

应用程序。工作表功能。匹配
以找到它们,然后
偏移
谢谢您的回答!你能再解释一下吗?我的意思是,这个函数是如何工作的,当它与2个相同的名字匹配时,我如何说比较相同的行但下一列?使用MSDN页面,帮助,从中组合一些东西是的,对不起,做了傻子,但我仍然迷路了…所以你给了它4分钟?