非常抱歉,我之前的回答中有一个错误。在 `writeData()` [函数](https://geek.csdn.net/educolumn/ba94496e6cfa8630df5d047358ad9719?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NDQ0MDg2MiwiZXhwIjoxNzA3MzcxOTM4LCJpYXQiOjE3MDY3NjcxMzgsInVzZXJuYW1lIjoid2VpeGluXzY4NjQ1NjQ1In0.RrTYEnMNYPC7AQdoij4SBb0kKEgHoyvF-bZOG2eGQvc&spm=1055.2569.3001.10083)中,我们应该将 `rankings_list[[i]]` 作为参数 `x`,而不是 `data.frame(Rank = rankings_list[[i]])`。以下是修正后的[代码](https://geek.csdn.net/educolumn/1572ef9b473b4e00f6b2bf6d428b7c27?spm=1055.2569.3001.10083):
library(openxlsx)
# 创建一个新的工作簿
wb <- createWorkbook()
# 循环遍历每次循环的排名组
for (i in 1:length(rankings_list)) {
# 创建一个新的工作表
sheet_name <- paste0("Ranking ", i)
addWorksheet(wb, sheet_name)
# 将排名结果写入工作表中
writeData(wb, sheet = i, x = rankings_list[[i]])
# 保存工作簿为 Excel 文件
saveWorkbook(wb, file = "rankings.xlsx")
现在,每次循环的排名结果将正确地写入到工作表中。请确保 `rankings_list` 是一个包含排名结果的[列表](https://geek.csdn.net/educolumn/ba94496e6cfa8630df5d047358ad9719?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NDQ0MDg2MiwiZXhwIjoxNzA3MzcxOTM4LCJpYXQiOjE3MDY3NjcxMzgsInVzZXJuYW1lIjoid2VpeGluXzY4NjQ1NjQ1In0.RrTYEnMNYPC7AQdoij4SBb0kKEgHoyvF-bZOG2eGQvc&spm=1055.2569.3001.10083),每个元素都是一个数据框。
非常抱歉之前给你带来的困惑,希望这次的回答能够[解决](https://geek.csdn.net/educolumn/03368addd5d267af1b4c6df01bb4af26?spm=1055.2569.3001.10083)问题。如果还有其他问题,请随时[提问](https://geek.csdn.net/edu/300981ef51993cfd737d329c71ba77f9?dp_token=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpZCI6NDQ0MDg2MiwiZXhwIjoxNzA3MzcxOTM4LCJpYXQiOjE3MDY3NjcxMzgsInVzZXJuYW1lIjoid2VpeGluXzY4NjQ1NjQ1In0.RrTYEnMNYPC7AQdoij4SBb0kKEgHoyvF-bZOG2eGQvc&spm=1055.2569.3001.10083)。