Excel 从另一个单元格中的字符串中删除一个单元格中的值(VBA)

Excel 从另一个单元格中的字符串中删除一个单元格中的值(VBA),excel,vba,excel-formula,Excel,Vba,Excel Formula,其中M2是一个字符串,在S2中显示为较长字符串的一部分,我需要将其从S2中清除。因此,例如,如果M2=“V90981”和S2=“743827V90981FFUY”,则S2需要变成“743827FFUY” 我已经研究过使用VB的Replace函数,但是我不知道如何根据另一列中的值为每一行变量创建搜索项。任何帮助都将不胜感激 在VBA中,要使用m2专门清除S2中的内容,可以使用以下方法: [s2].Replace what:=[m2], replacement:="", lookat:=xlPart

其中M2是一个字符串,在S2中显示为较长字符串的一部分,我需要将其从S2中清除。因此,例如,如果M2=“V90981”和S2=“743827V90981FFUY”,则S2需要变成“743827FFUY”


我已经研究过使用VB的Replace函数,但是我不知道如何根据另一列中的值为每一行变量创建搜索项。任何帮助都将不胜感激

在VBA中,要使用m2专门清除S2中的内容,可以使用以下方法:

[s2].Replace what:=[m2], replacement:="", lookat:=xlPart
Dim rLongString As Range
Dim rShortString As Range
Dim I As Long

Set rLongString = Range("S2:S10")
Set rShortString = Range("M2:M10")

For I = 1 To rLongString.Count
    rLongString(I).Replace what:=rShortString(I), replacement:="", lookat:=xlPart
Next I
如果要在一系列行中循环,可以执行以下操作:

[s2].Replace what:=[m2], replacement:="", lookat:=xlPart
Dim rLongString As Range
Dim rShortString As Range
Dim I As Long

Set rLongString = Range("S2:S10")
Set rShortString = Range("M2:M10")

For I = 1 To rLongString.Count
    rLongString(I).Replace what:=rShortString(I), replacement:="", lookat:=xlPart
Next I

让我们看看你试过什么