excel - 如果后两个字符等于这个,那么那个

标签 excel excel-formula

我有一串字母和数字,如果字符串的后两个字符等于某个值,则位置值应显示在相应的列中。

我用过MID函数从本质上提取我要使用的字符串的字符MID(A2,2,2)但现在我不知道如何比较返回到选项列表的内容,这两个字符可能是没有在一个非常长的公式中输入每个选项的情况。

以下是位于列中的可能字符串:

3PH356969   
MSFFACEBUS   
MBH0007398   
MBH0007402  

我正在提取其中的后两个字符,以与类似于此的列表进行比较
PH  
SF  
BH  
PG  
HR

然后这些值对应于位置(如下),这将是最佳返回:
Philadelphia   
Bay Area    
Birmingham   
Western PA   
Hartford

我可以写=IF(MID(A2,2,2)="PH","Philadelphia",else...)但随后 else-ifs 将继续进行 76 个 2 字符的字符串进行比较。我希望有一个更优化的方法。

预期的结果应该是字符串对应的位置,或者只是“错误”显示。

最佳答案

基本上我们需要使用查找/引用表,而不是更常见的 VLOOKUP我们可以使用更快的函数INDEX + MATCH组合。

enter image description here
B1 中的公式:

=INDEX($E$1:$E$6,MATCH(MID(A1,2,2),$D$1:$D$6;0))

关于excel - 如果后两个字符等于这个,那么那个,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57255448/

相关文章:

vba - 将包含行的范围复制到另一个工作表

arrays - EXCEL - COUNTIF 公式中的多个数组

excel - 查找日期范围内季度中的天数

vba - 使用 VBA 在公式 SUMIFS 中引用另一个工作簿中的变量工作表

java - 从 Excel 文件中的数据创建图表

vba - 打开带有参数的工作簿

excel - 如果另外两列匹配,则减去两列

excel - 在包含多个部分的公式中使用错误处理

node.js - exceljs node.js 写入文件在 VPS 上不起作用,但在本地主机上起作用

vb.net - Excel VBA 到 VB (DCOM)