gpt4 book ai didi

vba - 如何逐行查看值是否已经存在?

转载 作者:行者123 更新时间:2023-12-04 20:33:25 25 4
gpt4 key购买 nike

宏之前:

第 1 栏|第 7 栏

PHRT1S | TEST_TEST_TEST_TEST

在宏之后:

第 1 栏 |第 7 栏

PHRT1S | TEST_TEST_TEST_TEST(PHRT1S)

但是,如果即使没有附加ID,但只有随机的()存在,宏会跳过if there is()的逻辑原因。

理想情况下,我想为这种情况做好准备:

宏之前

第 1 栏 |第 7 栏

PHRT1S | TEST_TEST_TEST(测试)

宏之后

第 1 栏 |第 7 栏

PHRT1S | TEST_TEST_TEST(TEST)(PHRT1S)

如果第 1 列的值已经存在,则跳到第 7 列,而不是仅通过单个括号来标识该值。

我的宏如下:

With xlSheet


LastRow = xlSheet.UsedRange.Rows.Count
Set target = .Range(.Cells(15, 9), .Cells(LastRow, 9))
values = target.Value

Set ptype=.Range(.Cells(15,6),.Cells(LastRow,6))
pvalues=ptype.Value

For i = LBound(values, 1) To UBound(values, 1)
'if Statement for test keywords
If InStr(1,pvalues(i,1),"Package")= 0 AND InStr(1,pvalues(i,1),"Roadblock")= 0 Then
If InStr(1,values(i,1),"(")=0 Then
values(i, 1) = values(i, 1) & "(" & .Cells(i + 15 - LBound(values, 1), 3) & ")"
End If
End If
Next
target.Value = values
End With

最佳答案

这不适合你吗? If Instr(values(I,1),.Cells(i + 15 - LBound(values, 1), 3)) = 0 Then , 意思是确保类型尚未添加,而不是寻找括号。

关于vba - 如何逐行查看值是否已经存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46356172/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com