2016-05-20 36 views
1

在B列中,我想搜索「hmc」,然後用字符串「Found」替換列A中對應的單元格。宏:如果在列B中找到特定的字符串,則用新的字符串替換列A

我試圖使用宏記錄器來過濾「hmc」列B,這可以完成。但我需要轉到A列,並用字符串「Found」替換相應的單元格。

Col A Col B 
Accept hmc 
123  hmc 
Accept xcc 
Accept xcc 
123  hmc 
Accept hmc 

將被改寫爲:

Col A Col B 
Found hmc 
Found hmc 
Accept xcc 
Accept xcc 
Found hmc 
Found hmc 
+0

爲列A定義了單獨的範圍,並嘗試在適當的索引處循環以更新值 – Prathyush

回答

0

檢查這個答案:StackOverflow - almost same question

你只需要改變這一部分:

If Application.WorksheetFunction.CountIf(.Range("B1:B" & b_lastrow), .Range("A" & r).Value) > 0 Then 
    .Range("A" & r).Value = "newData" 
End If 

到:

If .Range("B" & r).Value = "hmc" Then 
    .Range("A" & r).Value = "found" 
End If 

至於其餘的代碼,您需要將工作表名稱更改爲您的,並且可能還需要將數據範圍更改爲您的數據。該代碼假定它以A1開頭。

+0

對不起,我使用列出的代碼但出錯。 如果.Range( 「B」 &R)。價值= 「HMC」 然後 .Range( 「A」 &R)。價值= 「找到」 結束如果 結束子 – maximus

+0

我範圍之前被刪除的點。它給出了對象全局失敗的方法範圍 – maximus

+0

請指出&r是什麼意思? tq – maximus

相關問題