3

AからDまでの4つの列があります。各行で列Cが同じで、各行で列Dが同じである行を見つける必要があります。E列にTrueまたはFalseの値を配置するのが最適です。VBAまたは数式は機能しますが、このようなものは数式で実行できると思います。

たとえば、私は次のようにしています。

行1XX123XYZ行 2XX234XYZ行3XX234YZX
行 4XX234 YZX

この例では、列Eは行1と2ではFalse、行3と4ではTrueになります。

4

1 に答える 1

2

これはあなたがしようとしていることですか?

Sub Sample()
    Dim ws As Worksheet
    Dim lRow As Long, i As Long

    Set ws = Sheets("Sheet1")

    With ws
        lRow = .Range("C" & .Rows.Count).End(xlUp).Row

        For i = 1 To lRow
            If i = 1 Then
                If .Range("C" & i).Value = .Range("C" & i + 1).Value And _
                .Range("D" & i).Value = .Range("D" & i + 1).Value Then _
                .Range("E" & i).Value = "True" Else .Range("E" & i).Value = "False"
            Else
                If (.Range("C" & i).Value = .Range("C" & i + 1).Value And _
                .Range("D" & i).Value = .Range("D" & i + 1).Value) Or _
                (.Range("C" & i).Value = .Range("C" & i - 1).Value And _
                .Range("D" & i).Value = .Range("D" & i - 1).Value) Then _
                .Range("E" & i).Value = "True" Else .Range("E" & i).Value = "False"
            End If
        Next i
    End With
End Sub

スナップショット

ここに画像の説明を入力してください

于 2012-07-13T19:09:15.660 に答える