将所有列值与 Excel 中的单个单元格进行比较

     2023-04-14     282

关键词:

【中文标题】将所有列值与 Excel 中的单个单元格进行比较【英文标题】:Compare all column values against individual cells in Excel 【发布时间】:2019-04-17 16:59:45 【问题描述】:

我想查找 C 列中的任何行是否与 A 或 B 列中的任何单元格匹配,如果匹配,则在相邻单元格中打印“是”或“否”。匹配可能不准确,因为 ID 可能写为“12401”,但列中的匹配可能类似于“cf[12401]”,ID 括在括号中。

这是我可能在表格中找到的一个示例。 A 和 B 列中的值最初来自另一个表,但我正在尝试查找它们可能存在于第三列中的所有实例。

Excel 示例:

如果可能,我想在列中列出匹配的值本身。但是那部分会是一个很好的额外部分,而另一部分更重要,因为中间一列大约有 6000 个值,所以手工操作需要几天时间。

我尝试过不同的方法:

=IF(COUNTIF(C2,"*" & A6 & "*" ), "Yes", "No") 

=IF(COUNTIF(C2,"*" & Length & "*" ), "Yes", "No")

这些适用于单个单词或单元格,但尝试根据单元格检查该列中的所有值将返回 no。我尝试了 SUMPRODUCT 的变体以及我发现的其他变体,但无法获得适用于多个值的东西。

Excel 中是否有一些函数可以让我这样做?或者也许是 VBA 中的一种方式?

【问题讨论】:

你试过Match()吗?看起来就在你的小巷里,不需要VBA。如果你走 VBA 路线,你会循环并使用InStr() 进行部分匹配。 我在这里和@Cyril 在一起,这看起来像是Match 的工作,尽管有一些连接。或者Find。喜欢,=FIND("12401",A1)>0 【参考方案1】:

这里有一些你可以使用的 UDF。

Dim MyArr As Variant, X As Double, LR As Double

Option Explicit

Public Function MatchID(RNG As Range) As String

With ActiveWorkbook.Sheets(RNG.Parent.Name)
    LR = .Cells(Rows.Count, 1).End(xlUp).Row
    MyArr = Application.Transpose(.Range(.Cells(2, 1), .Cells(LR, 1)))
    For X = LBound(MyArr) To UBound(MyArr)
        If InStr(1, RNG.Value, MyArr(X), vbTextCompare) > 0 Then
            If MatchID = "" Then
                MatchID = MyArr(X)
            Else
                MatchID = MatchID & ", " & MyArr(X)
            End If
        End If
    Next X
End With

End Function

Public Function MatchCFNAME(RNG As Range) As String

With ActiveWorkbook.Sheets(RNG.Parent.Name)
    LR = .Cells(Rows.Count, 1).End(xlUp).Row
    MyArr = Application.Transpose(.Range(.Cells(2, 2), .Cells(LR, 2)))
    For X = LBound(MyArr) To UBound(MyArr)
        If InStr(1, RNG.Value, MyArr(X), vbTextCompare) > 0 Then
            If MatchCFNAME = "" Then
                MatchCFNAME = MyArr(X)
            Else
                MatchCFNAME = MatchCFNAME & ", " & MyArr(X)
            End If
        End If
    Next X
End With

End Function

D2 中,我刚刚使用了=IF(F2<>"","YES","") 并将其横向向下拖动。

【讨论】:

将包含列表的记录值与 Postgres 中的列值进行比较

】将包含列表的记录值与Postgres中的列值进行比较【英文标题】:ComparearecordvaluecontainingalistwithcolumnvaluesinPostgres【发布时间】:2021-02-0120:50:57【问题描述】:我需要编写一个选择语句,该语句必须使用一个列值将两个表链接在一... 查看详情

将 DataTable 列值与行过滤器 C# 中的枚举进行比较

】将DataTable列值与行过滤器C#中的枚举进行比较【英文标题】:CompareDataTableColumnValuewithEnuminRowFilterC#【发布时间】:2017-08-0708:05:24【问题描述】:我有一个要使用DataView过滤的数据表。过滤条件基于枚举值和字符串数据表列值。... 查看详情

数组列值与配置单元中的正常列值之间的比较

】数组列值与配置单元中的正常列值之间的比较【英文标题】:comparisionbetweenarraycolumnvalueswithnormalcolumnvaluesinhive【发布时间】:2015-09-1806:51:25【问题描述】:表1列1列211,2,10211,12,1331,2,14420,1,10511,12,13,14表2列1列21次购买2产品视图10... 查看详情

需要一种更好的方法来将一个列值与同一表行中的多个列值进行比较

】需要一种更好的方法来将一个列值与同一表行中的多个列值进行比较【英文标题】:Needabetterwaytocompareonecolumnvaluetomanycolumnvaluesinthesametablerow【发布时间】:2021-12-1222:38:50【问题描述】:我有一个这样构造的SQL2017数据表:A1235100... 查看详情

将列值与第一行进行比较并保留 R 中的原始值

】将列值与第一行进行比较并保留R中的原始值【英文标题】:ComparecolumnvaluesagainstfirstrowandretainoriginalvaluesinR【发布时间】:2019-04-1900:23:44【问题描述】:我有一个很大的(当然)光谱数据矩阵,每列代表不同的质量值,而行代... 查看详情

单个单元格中的计数或总和(?)项目,与excel中的列表中的条件匹配(代码片段)

...色,猪,紫色,斑马要求用户从可能的选择列表中“选择所有动物”。输出将他们识别的所有项目放在一个单元格中,以逗号分隔。为每个调查条目创建一个新行。即。|用户1|“猿,猫,猪,紫色”||用户2|“猫,红,狗,猪,... 查看详情

Pandas Dataframe 根据列值将值展平到单元格

...只有一行。在相应的“商店”列中将列出一个单元格中的所有相应商店 查看详情

如何使用 SSIS 将 File1 标头中的单个值与 File2 中的总行数进行比较(csv)

】如何使用SSIS将File1标头中的单个值与File2中的总行数进行比较(csv)【英文标题】:HowtouseSSIStocomparesinglevalueinFile1headertototalrowcountinFile2(csv)【发布时间】:2019-12-0402:52:16【问题描述】:我的任务是创建一个步骤,以验证来自外... 查看详情

通过 VBA 将查询从 Access 导入 Excel 并删除单个单元格

...将查询从Access2013导入Excel2013。但是当我尝试删除Excelsheet中的单个单元格时,它会删除整行,我无法删除单个单元格并将一个单元格向右移动(没有选择)。我可以 查看详情

引用 UDF 中的特定单元格

...时间】:2018-08-2107:40:06【问题描述】:UDF目标:将范围的值与同一工作表上的特定单元格进行比较。发生错误#Value!。我认为,将通行证设置为此单元格ThisWorkbook.ThisWorksheet的问题。如何胜任?FunctionFav(DiapozonAsRange)AsLongApplication.Vo 查看详情

如何在单个 ag-grid 单元格中显示两列值?

】如何在单个ag-grid单元格中显示两列值?【英文标题】:Howtodisplaytwocolumnvaluesinasingleag-gridcell?【发布时间】:2020-08-2005:16:42【问题描述】:我有一条存储在MySqlDB中的First_Name和Second_Name记录。目前我在Ag-Grid的2个不同列中显示它... 查看详情

将带有换行符的值导出到 Excel 中的单个单元格中。 jQuery 数据表

】将带有换行符的值导出到Excel中的单个单元格中。jQuery数据表【英文标题】:ExportvaluewithLinebreaksintosinglecellinExcel.jQueryDatatables【发布时间】:2015-06-1813:27:42【问题描述】:我正在使用jQueryDataTables成功地将HTML表格从Web应用程序... 查看详情

根据比较将单元格与数组和打印行进行比较

】根据比较将单元格与数组和打印行进行比较【英文标题】:Comparingcellswitharrayandprintingrowsacordingtocomparison【发布时间】:2019-03-2606:31:48【问题描述】:我是python和pandas的新手...所以我正在使用pandas来读取和处理.CSV和其他excel文... 查看详情

如何将当前单元格中的数据与 TableView Swift 4 中的前一个单元格进行比较?

】如何将当前单元格中的数据与TableViewSwift4中的前一个单元格进行比较?【英文标题】:HowtocomparethedatafromcurrentcellwithitspreviouscellinsideTableViewSwift4?【发布时间】:2018-02-2408:38:51【问题描述】:我有一个JSON,看起来像这样:"product... 查看详情

将 A 列的一个值与 Hive HQL 中 B 列的所有值进行比较

】将A列的一个值与HiveHQL中B列的所有值进行比较【英文标题】:CompareonevalueofcolumnAwithallthevaluesofcolumnBinHiveHQL【发布时间】:2018-04-1707:35:33【问题描述】:我在一个表中有两列,比如A列和B列。我需要每次都用B列的所有值搜索A列... 查看详情

在excel中,按下delete键将清除被选区域中所有单元格的____。

参考技术A在Excel中,按下Delete键将清除被选区域中所有单元格的内容。使用方法:1、在打开的excel表格中点击选中需要清除内容的单元格。2、然后按下键盘上的“delete”按键,进行删除操作。3、按下后即可将选中单元格中的内... 查看详情

pyspark 将列值与另一列进行比较包含值范围

】pyspark将列值与另一列进行比较包含值范围【英文标题】:pysparkcomparecolumnvalueswithanothercolumncontainsrangeofvalues【发布时间】:2017-09-0310:39:45【问题描述】:我想将一列的值与具有参考值范围的另一列进行比较。我已尝试使用以下... 查看详情

Pyspark:将列值与另一个值进行比较

】Pyspark:将列值与另一个值进行比较【英文标题】:Pyspark:Comparecolumnvaluewithanothervalue【发布时间】:2021-04-0607:07:06【问题描述】:我有以下数据框:+----+----+----+----+|col0|col1|col2|col3|+----+----+----+----+|1|21|3|null||4|5|23|null||null|4|5|6||nu... 查看详情