2017-12-17 14 views
0

これを行う方法は自分ではわかりません。 私は2つの列を持っていると私は2番目の列にデータを交換したいだけの列2.VBA条件付き交換

列1 パンダ ベア アリ など

のように1列目からの値yの同じではありません

列2 ベア パンダ ベア ウルフ アリ クラゲ

私は何を達成したいことは次のとおりです。

A1 <> B1の場合は、「Bear」を「Mammal」 などに置き換えます。

ありがとうございます!

+0

列1の最後の行を見つけ、範囲を最初から最後まで設定し、その範囲をループし、currentcell <> currentcell.offset(、1)の場合は.....を置き換えます。 – QHarr

答えて

0

これは一例であり、適宜変更してください。私はあなたの交換の声明について少し不安です。私はあなたが書いたようにコード化しましたが、置き換えのリストがあるかどうか疑問に思っていますか?

以下のコードは私のコメントの論理に従います。

Sub test() 

Dim wb As Workbook 
Dim wsSource As Worksheet 

Set wb = ThisWorkbook 
Set wsSource = wb.Worksheets("Sheet4") 'change as appropriate 

Dim lastRowColA As Long 

lastRowColA = wsSource.Cells(wsSource.Rows.Count, "A").End(xlUp).Row 

Dim loopRange As Range 

Set loopRange = wsSource.Range("A1:A" & lastRowColA) 

Dim currCell As Range 

For Each currCell In loopRange 

    If currCell <> currCell.Offset(, 1) Then 

     currCell.Offset(, 1) = Replace(currCell.Offset(, 1), "Bear", "Mammal") 

    End If 

Next currCell 

End Sub