Go Premium for a chance to win a PS4. Enter to Win

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 318
  • Last Modified:

Excel - how to find value, replace with matching value from another sheet

I need to write a maco that will look for values in an active selection, find match in my "replacement values" and replace with a value in same row. The selection may change each time I use it, but should always be one column.

For example in the attached - in sheet "my diet", if a value is equal to column A in sheet  "replacement values", replace with Column b in sheet "replacement values".
My replacement values worksheet will always be same reference, ie I can save it to hard drive and go back to it, I may add to it so I would like the macro to go to the sheet and repeat until end of data.
 
for example find in my diet where ever it says "apples" and replace with "fruit". Steak will remain as there is no match in replacement values.
Can someone post a simple macro that I can modify and use?
sample.xlsx
0
Mswetsky
Asked:
Mswetsky
1 Solution
 
Saqib Husain, SyedEngineerCommented:
This will replace the words in the selected range

Sub replacewords()
    Dim sws As Worksheet
    Dim tws As Worksheet
    Dim rw As Range
    Dim cel As Range
    Set sws = Sheets("Replacement values")
    Set tws = Sheets("My diet")
    For Each cel In Selection
        Set rw = sws.Range("A:A").Find(cel, , , xlWhole)
        If Not rw Is Nothing Then
            cel.Value = rw.Offset(, 1)
        End If
    Next cel
End Sub
0
 
MswetskyAuthor Commented:
Thank you for your prompt complete suggestion, It worked fine.
0

Featured Post

Industry Leaders: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now