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

在R语言中基于逻辑值动态调用writeData函数

解决方案

你可以通过循环遍历ABC向量的每个元素,同时动态计算对应的列号来实现需求。具体代码如下:

# 示例向量
ABC = c(TRUE, TRUE, TRUE, FALSE, FALSE)

# 初始化工作簿和工作表
wb <- createWorkbook()
addWorksheet(wb, "Sheet1")

# 固定起始行,起始列从4开始
start_row <- 3
start_col <- 4

# 循环处理每个元素
for (i in seq_along(ABC)) {
  # 计算当前元素对应的列号:第i个元素对应 start_col + i - 1
  current_col <- start_col + (i - 1)
  # 当元素为TRUE时写入内容
  if (ABC[i]) {
    writeData(
      wb,
      sheet = "Sheet1",
      x = "Yes Please",
      startRow = start_row,
      startCol = current_col
    )
  }
}

# 保存工作簿
saveWorkbook(wb, "result.xlsx", overwrite = TRUE)

代码说明:

  • seq_along(ABC)生成与ABC长度一致的索引序列,确保遍历每一个元素
  • current_col的计算逻辑:第一个元素对应第4列,第二个对应第5列,以此类推,完全匹配你描述的位置规则
  • 仅当ABC[i]为TRUE时,才执行writeData写入指定内容

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 09:10:35