本文目录导读:

- 场景一:Excel 文件合并(多个文件 -> 一个文件)
- 场景二:同一张 Excel 表的 Sheet 合并(多个Sheet -> 一个Sheet)
- 场景三:HTML 表格合并(前端 / 爬虫 / JavaScript)
- 场景四:CSV 文件批量合并(命令行 / Linux)
- 场景五:数据库表合并(SQL)
- 需要我帮你写更具体的脚本吗?
“表格合并”在不同的场景下实现方式完全不同,为了给你最准确的答案,请先确认你的具体场景。
我整理了最常见集中场景的脚本写法,你可以直接参考:
Excel 文件合并(多个文件 -> 一个文件)
工具:Python + Pandas 库
需求:将 销售1月.xlsx、销售2月.xlsx 等结构相同的表格纵向堆叠。
import pandas as pd
import os
# 设置存放Excel的文件夹路径
folder_path = "./excel_files/"
# 获取所有.xlsx文件
all_files = [f for f in os.listdir(folder_path) if f.endswith('.xlsx')]
# 用于存储所有DataFrame的列表
df_list = []
for file in all_files:
file_path = os.path.join(folder_path, file)
# 读取Excel文件
df = pd.read_excel(file_path)
df_list.append(df)
# 纵向合并(行合并),ignore_index=True 重置索引
merged_df = pd.concat(df_list, ignore_index=True)
# 保存合并后的结果
merged_df.to_excel("合并结果.xlsx", index=False)
print("合并完成!")
同一张 Excel 表的 Sheet 合并(多个Sheet -> 一个Sheet)
工具:Python + Pandas / Openpyxl
需求:Excel工作簿内有 Sheet1、Sheet2、Sheet3,合并为一张总表。
import pandas as pd
file_path = "数据源.xlsx"
# 读取所有Sheet
all_sheets = pd.read_excel(file_path, sheet_name=None) # 返回一个字典
df_list = []
for sheet_name, df in all_sheets.items():
print(f"正在处理Sheet: {sheet_name}")
df_list.append(df)
merged_df = pd.concat(df_list, ignore_index=True)
merged_df.to_excel("总表.xlsx", index=False)
HTML 表格合并(前端 / 爬虫 / JavaScript)
需求:网页上有多个 <table>,想把它们合并成一个表格。
// 适用于浏览器控制台或JS文件
function mergeTables(selector) {
// 获取所有符合选择器的表格
const tables = document.querySelectorAll(selector);
if (tables.length < 2) return;
// 以第一个表格为主体
const targetTable = tables[0];
for (let i = 1; i < tables.length; i++) {
const rows = tables[i].querySelectorAll('tr');
// 跳过第一个表格的标题行(可自定义)
const startIndex = (i === 1) ? 0 : 0;
for (let j = startIndex; j < rows.length; j++) {
// 将后面的表格的行追加到目标表格
targetTable.appendChild(rows[j].cloneNode(true));
}
// 可选:隐藏或删除原来的表格
// tables[i].style.display = 'none';
tables[i].remove(); // 直接移除
}
console.log('表格合并完成');
}
// 使用:合并页面上所有 class 为 data-table 的表格
// mergeTables('.data-table');
CSV 文件批量合并(命令行 / Linux)
需求:当前目录下所有 .csv 文件合并成一个(无语法区别,纯追加行)。
# 方法1:跳过每个文件的表头(只保留第一个文件的表头)
head -1 第一个文件.csv > 合并结果.csv
tail -n +2 *.csv >> 合并结果.csv
# 方法2:使用 awk 自动处理(推荐)
awk 'FNR==1 && NR!=1 {next} {print}' *.csv > 合并结果.csv
数据库表合并(SQL)
需求:两个结构相同的历史表合并到一张表。
-- 假设表A是旧表,表B是新数据,合并到表A INSERT INTO 表A (列1, 列2, 列3) SELECT 列1, 列2, 列3 FROM 表B; -- 或者创建一张新表 CREATE TABLE 合并表 AS SELECT * FROM 表A UNION ALL SELECT * FROM 表B;
需要我帮你写更具体的脚本吗?
如果以上没有覆盖你的场景,请补充以下信息:
- 表格格式:Excel / CSV / Word / HTML / 数据库 / 其他
- 合并方向:纵向(追加行)还是横向(追加列,如 VLOOKUP 式合并)
- 合并条件:按行号合并,还是按某一列作为键值(如按“ID”列匹配合并)
- 你熟悉的工具:Python / JavaScript / VBA / Shell / SQL
告诉我这些,我可以给你一个可以直接运行的脚本。
版权声明:NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
足球直播
足球直播
足球直播
篮球直播
篮球直播
篮球直播
NBA直播
NBA直播
NBA直播
CBA直播
CBA直播
CBA直播
亚冠直播
亚冠直播
亚冠直播
欧冠直播
欧冠直播
欧冠直播
英超直播
英超直播
英超直播
西甲直播
西甲直播
西甲直播
中超直播
中超直播
中超直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
曼联直播
曼联直播
曼联直播
日职联直播
日职联直播
日职联直播
澳超直播
澳超直播
澳超直播
阿森纳直播
阿森纳直播
阿森纳直播
足球直播
足球直播
足球直播
NBA直播
NBA直播
NBA直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
欧冠直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
足球直播
足球直播
足球直播
足球直播
足球直播
英超直播
英超直播
英超直播
英超直播
英超直播
篮球直播
篮球直播
篮球直播
篮球直播
篮球直播
CBA直播
CBA直播
CBA直播
CBA直播
CBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
NBA直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播
中超直播