0
Column A        Column C          Column E

1                 11               11


2                  1               34

3                 34               77

4                 4

5                 5

6                 77

7

8

9

10

我的代码如下。我的问题是我无法从 B 列中获得不相等的值。

Private Sub CommandButton1_Click()

Dim val1, val2 As String

For f = 1 To 10

 For g = 1 To 8

 val1 = Worksheets("Sheet1").Cells(f, 1)
 val2 = Worksheets("Sheet1").Cells(g, 3)

 If (val1 <> val2) Then
 Worksheets("Sheet1").Cells(g, 5) = val1

 End If

   Next g



 Next f



End Sub
4

3 回答 3

0

另一种方法 TESTED 方法 1

   Sub tested()
    Dim rng As Range
    Dim lrow As Integer
    With Sheets("Sheet1")
    lrow = .Range("A" & Rows.Count).End(xlUp).Row
    For Each rng In .Range("A2:A" & lrow)
    If Not rng.Value = rng.Offset(0, 2).Value Then
    rng.Offset(0, 4).Value = rng.Offset(0, 2).Value
    End If
    Next rng
    End With
    End Sub

更新代码

Sub compare()

Dim lrow As Integer

    Dim val1 As String, val2 As String
With Worksheets("Sheet1")
lrow = .Range("A" & Rows.Count).End(xlUp).Row
End With

    For i = 1 To lrow

            val1 = Worksheets("Sheet1").Range("A" & i)
            val2 = Worksheets("Sheet2").Range("C" & i)

            If (val1 <> val2) Then
               Worksheets("Sheet3").Range("E" & i) = val2
            End If

    Next

End Sub
于 2013-10-02T05:49:07.930 回答
0

试试下面的代码

Sub compare()

    Dim val1 As String, val2 As String

    For i = 1 To 10

            val1 = Worksheets("Sheet1").Range("A" & i)
            val2 = Worksheets("Sheet1").Range("C" & i)

            If (val1 <> val2) Then
               Worksheets("Sheet1").Range("E" & i) = val2
            End If

    Next

End Sub
于 2013-10-02T05:22:12.193 回答
0

其他选择

Sub compare()
    With Worksheets("Sheet1")
        .Range("E1:E10").Formula = "=IF(A1<>C1,C1,"""")"
    End With
End Sub


Sub compare1()

    For i = 1 To 10
        With Worksheets("Sheet1")
            .Range("E" & i) = IIf(.Range("A" & i) <> .Range("C" & i), .Range("C" & i), "")
        End With
    Next

End Sub
于 2013-10-02T06:28:48.537 回答