You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何按行数拆分XLSX文件以适配SharePoint上传限制?

用R拆分XLSX文件适配SharePoint上传限制

实现步骤

  • 安装并加载读取、写入Excel文件的必要工具包
  • 读取目标XLSX文件
  • 按指定行数拆分数据集
  • 循环导出拆分后的小文件

代码示例

首次运行需安装依赖包:

install.packages(c("readxl", "writexl"))

执行拆分操作:

# 加载工具包
library(readxl)
library(writexl)

# 读取原Excel文件,替换为你的实际文件路径
df <- read_excel("你的原文件路径.xlsx")

# 设置每个拆分文件的最大行数(小于SharePoint的20000行限制,这里设为19999留余量)
max_rows <- 19999

# 计算需要拆分的份数
split_num <- ceiling(nrow(df) / max_rows)

# 循环拆分并保存文件
for (i in 1:split_num) {
  # 确定当前拆分的行范围
  start_row <- (i - 1) * max_rows + 1
  end_row <- min(i * max_rows, nrow(df))
  # 提取数据子集
  df_subset <- df[start_row:end_row, ]
  # 导出为带序号的新Excel文件
  write_xlsx(df_subset, paste0("拆分文件_", i, ".xlsx"))
}

针对示例数据的测试代码

修正你提供的示例代码参数错误后,测试拆分逻辑:

library(writexl)

df2 <- data.frame(a = seq(1,6694), b = seq(1,6694), c = seq(1,6694),
                  d = seq(1,6694), e = seq(1,6694), f = seq(1,6694),
                  g = seq(1,6694), h = seq(1,6694), i = seq(1,6694),
                  k = seq(1,6694), l = seq(1,6694), m = seq(1,6694),
                  n = seq(1,6694), o = seq(1,6694), p = seq(1,6694),
                  q = seq(1,6694))

max_rows <- 19999
split_num <- ceiling(nrow(df2) / max_rows)

for (i in 1:split_num) {
  start_row <- (i - 1) * max_rows + 1
  end_row <- min(i * max_rows, nrow(df2))
  df_subset <- df2[start_row:end_row, ]
  write_xlsx(df_subset, paste0("示例拆分文件_", i, ".xlsx"))
}

内容的提问来源于stack exchange,提问作者Ed_Gravy

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 00:56:02