Tag: 部分

VBA:部分数组string的自动筛选

我需要为我所做的数组过滤一列。 我试图使用Cells.AutoFilter Field:=14, Criteria1:=stringArray, Operator:=但我不知道运营商应该是什么。 我的问题的一个例子是,当我自动过滤列中的内容实际上是“Tawm”时,我的Array中的某些内容可能是“Ta”。 我在想,像Operator:=xlContains但这是一个不行。 我只是想让它像我在“Ta”中input,然后select自动filterfind的所有选项。 我已经尝试添加"*"到数组中的每个条目,下面的代码,但它似乎没有帮助: Dim stringArray As Variant Dim tempMfr As String Dim temp2Mfr As String Dim t As Variant tempMfr = xCell & "*" temp2Mfr = xCell.Offset(0, 2) 'this cell may have multiple entries such as "a, b, c" stringArray = Split(temp2Mfr, ", ") For Each t In stringArray […]

在两张不同的表中匹配部分文本string(90%)两列

我试图将(90%)部分文本string从表单列匹配到另一个表单列,并将最终结果带到主表单列中。 我发现了一个VBA解决scheme,但是我遇到了一些问题。 1)匹配确切的文本2)find一个问题,以匹配两个不同的表单列。 请帮我解决这个问题。 Sub lookup() Dim TotalRows As Long Dim rng As Range Dim i As Long 'Copy lookup values from sheet1 to sheet3 Sheets("BANK STATEMENT ENTRY").Select TotalRows = ActiveSheet.UsedRange.Rows.Count Range("F3:F" & TotalRows).Copy Destination:=Sheets("TEST").Range("A1") 'Go to the destination sheet Sheets("TEST").Select For i = 1 To TotalRows 'Search for the value on sheet2 Set rng […]

如何validation部分string是否存在于Excel工作表的各列中的单元格中?

如何validation跨列的单元格中的部分string,而不必查找完全匹配? 我有一个包含两列的电子表格,其中包含文本或“string”forms的相应数据对。 然而,除了结尾的几个字符之外,每个相应的对几乎都匹配。 尽pipestring匹配不正确,但我需要让excel识别对,并且在两列之间是否存在对应的对,返回“是”或“否”。 我想让它在一个单元中告诉我“是”或“否”。 我不想删除任何一列中的字符,使它们匹配,他们必须保持原样。 我的解决scheme是,如果我使用IF语句来确定是否A:A=B:B ,我所需要做的就是告诉excel也用空格replace相冲突的文本字符,但是没有工作:(它返回#VALUE而不是yes或no。我把这个函数放到了D1 。 这是我的公式: =IF(SUBSTITUTE(A:A,"-Z","")*A:A=B:B,"Yes","No") 我想也许我需要一个能完成以下工作的公式: 如果column A单元格中长度不超过12个字符的string与column B单元格中的另一个string匹配,则返回C2 “true” 我不知道会是什么公式。 我将不胜感激任何帮助! 提前致谢!

在范围内查找部分文本,返回单元格值

我有一个包含3列的数据数组,随着更多的数据被添加行增加。 我有一些已知的值,如XX-12345,XXX-12345或XXXX-12345,我需要识别并返回该单元格中的内容。 问题是命名约定不是标准的,所以值可能如下所示:XX-12345-Temp,XX-12345.Temp XXX-12345-Temp,XXX-12345.Temp或XXXX-12345-Temp, XXXX-12345.Temp 下面是我必须执行此function的代码,但它并不总是工作。 有时它返回一个零,我不明白为什么这样做。 =INDIRECT("R"&REPLACE(TEXT(MIN(IF(ISNUMBER(SEARCH(F2,$A$2:$C$15349)),(ROW($A$2:$C$15349))*1000+COLUMN($A$2:$C$15349))),"000000"),4,0,"C"),FALSE)