|
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用 · 内置多项VBA编程加强工具 ★ 免费下载 ★ ★ 使用手册★
B列为当前代码执行的结果,怎么把OMC18剔除出去不执行,剩下的OMC16,OMC14执行,比如I列那个样子,还有就是执行后添加到txt文本的中,文本名为J如列那样,添加内容为A列的内容,附件的TXT文本就是我想要的结果,I和J为示例
Sub 文字处理()
arr = Range("A1").CurrentRegion
brr = Array("OMC14", "OMC18", "OMC16")
For j = 0 To 2
Set dic = CreateObject("scripting.dictionary")
For i = 2 To UBound(arr)
If arr(i, 2) = brr(j) Then
st = Replace(Split(arr(i, 1), "{")(1), "}", "")
If Not dic.Exists(st) Then
dic(st) = dic.Count
End If
End If
Next
For i = 2 To UBound(arr)
st = Replace(Split(arr(i, 1), "{")(1), "}", "")
If arr(i, 2) = brr(j) And dic(st) >= 5 Then
arr(i, 2) = arr(i, 2) & "-" & Fix(dic(st) / 5)
End If
Next
Set dic = Nothing
Next
Range("A1").CurrentRegion = arr
End Sub
|
|