r - 使用 xlsx 包覆盖 xlsm 文件中的单元格引用
问题描述
我有一个 .xlsm 工作簿,其中有一个当前引用单元格 B2 的单元格 B1,其硬编码值为 5。
我想使用 R 从单元格 B1 中删除引用并将其替换为硬编码值 0。
我正在尝试通过使用 xlsx 包在 R 中执行此操作。但是,在使用 setCellValue 函数并打开工作簿后,我看到 B1 的值为 0,但它仍然清楚地引用了单元格 B2(这可以在公式栏中看到以及单元格 B3 的事实,其中是单元格 B1 的函数,保持不变)
您能帮我利用 xlsx 包覆盖 B1 中的单元格引用并将其替换为硬编码值吗?
请参阅下面的代码以及excel工作簿的前后截图。
代码:
library('xlsx')
fn <- 'test.xlsm'
sn <- 'Sheet1'
wb <- loadWorkbook(fn)
sheets <- getSheets(wb)
sheet <- sheets[[sn]]
rows <- getRows(sheet)
cells <- getCells(rows)
setCellValue(cells$`1.2`, 0)
saveWorkbook(wb, fn)
运行前的 Excel 工作簿:
运行后的 Excel 工作簿:
解决方案
推荐阅读
- regex - sed 通过捕获组匹配替换正则表达式
- auth0 - 在 GAM 中使用 Auth0 作为身份验证提供程序
- r - 由于 beepr 包错误,我无法安装任何包
- pdf - 按页面拆分后如何优化我的 pdf 存储库?
- sql - SQL,根据其他表中的相关字段删除记录
- python - 熊猫 to_datetime 中的 KeyError
- c# - 如何解决从 .NET 5 主机应用程序引用为插件的 Framework 4.8 类库的资源依赖关系?
- python - 在 Python 中忽略日期的正则表达式查找分数
- sql - 我如何/在哪里使用 PIVOT?
- macos - SwiftUI + MacOS + Xcode:格式化两个视图 HStack 的右侧,使其在其父视图中居中