如何对比两个Spreadsheet,找出仅存在于11000行Workbook中的行
解决方案:找出仅存在于11000行表格中的条目
方法1:Excel条件格式快速标记
- 将两个表格放在同一工作簿的不同工作表(如Sheet1存11000行数据,Sheet2存8000行数据)
- 选中Sheet1的全部数据区域(A1:J11000)
- 点击「开始」→「条件格式」→「新建规则」,选择「使用公式确定要设置格式的单元格」
- 输入公式(用分隔符避免内容拼接冲突):
=COUNTIF(Sheet2!$A:$J,TEXTJOIN("|",TRUE,$A1:$J1))=0 - 设置高亮格式(比如红色填充),确定后仅存在于Sheet1的行会被自动标记
方法2:辅助列公式筛选
- 在Sheet1新增K列作为辅助列,输入公式:
=VLOOKUP(TEXTJOIN("|",TRUE,$A1:$J1),Sheet2!$A:$J,1,FALSE) - 下拉填充公式后,显示
#N/A的行就是仅在11000行表格中存在的条目 - 筛选K列的
#N/A值,即可批量提取目标行
方法3:Power Query高效处理大数据
- 点击「数据」→「获取数据」→「自工作簿」,分别导入两个表格到Power Query编辑器
- 选择11000行的表格,点击「合并查询」→「合并查询作为新查询」,选择8000行的表格作为合并对象,匹配条件勾选全部10列,匹配类型选「左外部」
- 合并完成后,筛选合并列中显示
null的行,这些就是仅存在于大表格的条目 - 点击「关闭并上载」,将结果导出到新工作表
方法4:Python脚本(适合大数据量场景)
如果Excel处理卡顿,用Python脚本更高效:
import pandas as pd # 读取两个表格文件 df_large = pd.read_excel("11000行文件.xlsx") df_small = pd.read_excel("8000行文件.xlsx") # 筛选仅在大表格存在的行 merged_df = pd.merge(df_large, df_small, how="left", indicator=True) result_df = merged_df[merged_df["_merge"] == "left_only"].drop("_merge", axis=1) # 保存结果到新文件 result_df.to_excel("仅存在于11000行的条目.xlsx", index=False)
- 执行前需先安装依赖库:
pip install pandas openpyxl
内容的提问来源于stack exchange,提问作者user2471951
相关产品推荐
相关产品推荐

