首页 > 编程问答 >EXCEL:按有序列表对数组进行排序,无需自定义列表

EXCEL:按有序列表对数组进行排序,无需自定义列表

时间:2024-07-19 14:20:08浏览次数:17  
标签:excel sorting excel-formula

我有一张邮政编码表,其中包含发送到每个邮政编码的货件数量。 我想按特定顺序按邮政编码对这个数组进行排序,我将其放在第二个列表中。 我不想按客户数量或邮政编码的数字顺序排序,而是按这个专门排名的列表排序。 我无法使用自定义排序功能,因为我的列表对于此功能来说太长了。 Source Data

我希望结果如下所示: Expected outcome

我有 Office 2016,但是对于此任务,我一直在尝试基于 Web Office 365 使用排序功能

我尝试过使用 SORT 和 SORTBY,但是无论我如何格式化它们,我都会得到#VALUE!错误。 我尝试了以下公式,但它抛出了#VALUE!

=SORTBY(A2:B944, D2:E2639)

遇到的问题是 SORTBY 函数希望按 相同的行数 来对的范围进行排序。在的公式中,尝试按 2638 行( D2:E2639 )对 943 行( A2:B944 )进行排序,从而导致错误。

为了解决这个问题,需要创建一个“辅助列”,其中包含基于的自定义顺序的每个邮政编码的“排名”。

以下是步骤:

  1. 创建辅助列: F 列 中,我们将使用 MATCH 函数来查找每个邮政编码在的自定义列表中的位置。在单元格 F2 中,输入以下公式并向下拖动到 F 列的末尾:

excel =MATCH(A2,$D$2:$D$2639,0) 此公式查找 A2 中的邮政编码在 D 列中的位置,并返回其在列表中的位置。

  1. 按辅助列排序: 现在,可以使用 SORTBY 函数根据辅助列对数据进行排序。在单元格 G2 中,输入以下公式并向下拖动:

excel =SORTBY(A2:B944,F2:F944,1) 此公式按升序对 A2:B944 范围进行排序,方法是根据 F2:F944 中的相应值进行排序。

现在,应该在 G 列和 H 列中获得按自定义邮政编码顺序排序的数据。

注意:

  • $ 符号用于锁定引用,以便在向下拖动公式时,它们不会改变。
  • 如果的自定义邮政编码列表中存在重复项,则 MATCH 函数将仅返回第一次出现的索引。

希望这可以帮助到!

标签:excel,sorting,excel-formula
From: 78767793

相关文章

  • 系统运营支持-如何快速协助处理excel里的数据?来吧,教你一招
    今天,一个销售MM发来一个excel文件,里面是客户的结算数据。需要我们技术协助,为excel里每一行的个人银行卡号,匹配出来所对应的银行机构编码和银行名称。下方是excel文件里其中一部分数据的截图。预期结果是:  这要依托我们系统里的卡bin数据来完成。查询卡bin的sql是:select*......
  • [1036] Extracting hyperlink information from an Excel file
    Certainly!ExtractinghyperlinkinformationfromanExcelfile(specifically.xlsxformat)inPythoncanbedoneusingtheopenpyxllibrary.Let’sdiverightin:Usingopenpyxl:First,makesureyouhavetheopenpyxllibraryinstalled.Ifnot,youcan......
  • Python获取EXCEL实用行数
    #获取EXCEL实用行数defget_excel_rows(_excel_path):"""输入参数::param_excel_path:Excel全路径功能:获取Excel实际行数,即培训人员数量"""ifnot_excel_path.exists():print(f'{Fore.RED}文件不存在噢!!!\n{_excel_path}{Sty......
  • Wpf和Winform使用devpress控件库导出Excel并调整报表样式
    Wpf和Winform使用devpress控件库导出Excel并调整报表样式背景客户需求经常需要出各种报表,部分客户对报表的样式有要求。包括颜色、字体、分页等等。代码使用Datagridview导出excel调整样式DevExpress.XtraGrid.Views.Grid.GridViewgdv#regionGridView属性设置//行号所......
  • Excel系列---【如何给一列字符串,在首尾快速加上双引号】
    你可以按照以下步骤将这个公式从A1应用到A164,并将结果生成到C1到C164:例如A1的内容为hello,在C1单元格中输入以下公式:=""""&A1&""","按下回车键后,C1单元格会显示A1单元格内容的修改结果,结果为"hello",。选中C1单元格,然后将鼠标放在单元格右下角的小黑点上,当鼠标变成十字形时,按......
  • 请问如何将带有斜纹水印pdf的转成Excel呢?
    大家好,我是Python进阶者。一、前言前几天在Python最强王者交流群【wen】问了一个Python自动化办公的问题,问题如下:请问如何将带有斜纹水印pdf的转成Excel呢?目前我把pdf转成图片,根据水印的颜色进行清除,但是在脱网环境下无法将图片转成Excel。二、实现过程后来【隔壁......
  • Python读Excel数据,创建Word文档上下文字典列表,元素为字典(新)
    #读Excel数据,创建Word文档上下文字典列表,元素为每个培训人员的上下文字典defcreate_docx_context_dict_list(_excel_path):"""输入参数::param_excel_path:Excel全路径功能:创建Word文档上下文字典列表,元素为每个培训人员的上下文字典字典的键为......
  • xlrd.biffh.XLRDError: Excel xlsx file; not supported
    问题描述今天在测试python读取excel文件的时候出现了异常Traceback(mostrecentcalllast):File"E:/worksp_py/hardwary/100day/thirtfive/testxml.py",line5,in<module>wb=xlrd.open_workbook("./test.xlsx")File"E:\Tools\anaconda3......
  • 比对两个excel文件数据差异
    背景工作中需要一个测试需求:需要比对两个excel文件的内容,以门店编码为唯一键,比对其他字段值不一致的地方,如有不一致需要写入另外一个文件解决方案使用python代码实现#-*-coding:utf-8-*-"""@File:数据核对脚本.py@Author:simon@email:[email protected]......
  • JAVA操作Excel使用poi和easyexcel依赖的兼容性问题
      EasyExcel版本3.1.0及以上支持poi5.2.3。具体来说,EasyExcel3.1.0及之后的版本兼容poi4.1.2至5.2.2的范围,因此它确实支持poi5.2.3。但请注意,使用3.0.0及以上版本的EasyExcel配合poi5+时,需要手动在项目的依赖管理中排除poi-ooxml-schemas依赖,示例如下:<dependency>......