无需复制/粘贴即可更改单元格

无需复制/粘贴即可更改单元格

想象一下列表会更长... 有没有办法用 C 列中的适当名称/ID 替换 A 和 B 中的单元格?“适当的名称”是 C 列中的内容(匹配名称)。这是最终结果是的,复制/粘贴有效,但是当整个内容长达 5000 并且 C 列不是完美顺序时,它需要花费很多时间。

在此处输入图片描述

答案1

使用 vba,您可以通过这种方式替换查找的值调整范围以指向您的替代值的位置以及您正在查找的项目的范围

Sub substituteLookedUp()
Dim myStr As String
Dim matchDbl As Double
Dim Rng As Range
   Set Rng = Range("C1:C10")

   For Each cell In Range("a1:b12")
      If cell <> "" Then
           myStr = Mid(cell, WorksheetFunction.Find(" ", cell) + 1, Len(cell) - WorksheetFunction.Find(" ", cell)) & "_" & Left(cell, WorksheetFunction.Find(" ", cell) - 1) & "*"
           matchDbl = WorksheetFunction.Match(myStr, Rng, 0)
           newStr = Range("C" & matchDbl)
         Else: newStr = ""
       End If
     cell.Value = newStr
   Next

子目录结束

相关内容