![]() |
More Find/REplace from table questions...
Hi again.
Thanks to Barry-Jon and Dave Peterson for their help earlier on this topic. Now I need a little more help. I have a macro I pieced together from this group that finds a value in column 1 of a table in replaces it with it's corresponding value from column 2, which works fantastically well. Now I have one pesky column of data that has to match by 2 columns of data. So essentially, if Columns C and D on worksheet1 match columns B and C on worksheey2, I need to replace Column C on worksheet1 with Colum A on worksheet2. Does that make sense? Here is the code I am working with for the single item matching Find/Replace from a range: ______________________________________ Sub RangeFind2Replace1() Dim rngReplaceWith As Excel.Range Dim rngSearchArea As Excel.Range Dim lngRepaceCount As Long Set rngReplaceWith = GetUserRange("Please select find/replace values range (two columns)") If Not rngReplaceWith Is Nothing Then 'basic range size validation - a lot more could be done If rngReplaceWith.Columns.Count = 2 Then 'now get the area in which to do the find/replace Set rngSearchArea = GetUserRange("Please select the range in which to find/replace") If Not rngSearchArea Is Nothing Then 'do the search and replace For lngRepaceCount = 1 To rngReplaceWith.Rows.Count rngSearchArea.Replace What:=rngReplaceWith.Cells(lngRepaceCount, 2).Value, _ Replacement:=rngReplaceWith.Cells(lngRepaceCount, 1).Value, _ MatchCase:=False, lookat:=xlWhole, ReplaceFormat:=False Next lngRepaceCount End If Else MsgBox "Invalid find/replace range selected", vbExclamation + vbOKOnly End If End If End Sub Private Function GetUserRange(Prompt As String, Optional Title As String = "Input") As Excel.Range On Error GoTo ErrorHandler Dim retVal As Excel.Range Set retVal = Application.InputBox(Prompt, Title, , , , , , 8) ExitProc: Set GetUserRange = retVal Exit Function ErrorHandler: Set retVal = Nothing Resume ExitProc End Function ________________________________ Can this be modified to do what I need it to? |
All times are GMT +1. The time now is 03:26 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com