在 Excel 中为列中的字符串分配数字

在 Excel 中为列中的字符串分配数字

我有一个电子表格,其中的列可以包含一组字符串中的值,例如收入列可以包含以下值:高、低、中等。如何知道列的值中包含哪些唯一字符串,以及如何在 Excel 中用数字替换这些字符串?

答案1

要获取包含指定字符串的单元格数量,请使用以下公式:

=COUNTIF(B1:B4; "High")
=COUNTIF(B1:B4; "Medium")
=COUNTIF(B1:B4; "Low")

根据您的需要调整第一个参数中的范围。
具有这些公式之一的单元格将显示具有指定文本的单元格数量。

要将文本转换为数字,您可以使用搜索和替换命令(按Ctrl+ H)或带有公式的临时列:

=IF(B1="High";3;IF(B1="Medium";2;1))

调整B1到第一个单元格,然后拖动自动填充器将公式复制到其他行。


要查找唯一数据,请按照以下步骤操作过滤唯一值帮助文章:

  1. 选择单元格范围,或确保活动单元格位于表格中。
  2. 数据选项卡中排序和过滤组,点击先进的
  3. 在里面高级筛选对话框中,执行以下操作之一:
    1. 要过滤单元格区域或表格,请点击就地过滤列表
    2. 要将过滤器的结果复制到另一个位置,请执行以下操作:
      1. 点击复制到另一个位置
      2. 在里面复制到框中,输入单元格引用。
  4. 选择仅限唯一记录复选框,然后单击好的

或者,你可以使用答案仅使用公式在 Excel 中获取唯一值,具体内容如下:创建一个独特的按字母顺序排序的列表,从 excel 中的列中提取

答案2

您需要在 VBA 中执行此操作:

  • 声明一本新词典
  • For..Next在你考虑的细胞上
  • 如果字典中尚未包含该值,则将其与流水号一起添加为键
  • For..Next再次越过细胞
  • 根据字典替换值

我没有时间编写代码,但我相信这会为您提供解决方案。

相关内容