R(3.0.2)/ MSOffice 2013/Win7
假设我们有一个包含两个表的现有data.xlsx文件 - "data"和"calc".
"数据"表通过R填写:
require(XLConnect)
df <- data.frame(c(1,2,3,4,5), c(2,3,4,5,6))
wb <- loadWorkbook("data.xlsx", create=F)
setStyleAction(wb, type=XLC$"STYLE_ACTION.NONE")
writeWorksheet(wb, data=df, sheet="data", startRow=1, startCol=1, header=F)
saveWorkbook(wb)
Run Code Online (Sandbox Code Playgroud)
所以这就出现了问题 - 我有"calc"表,它引用了带有公式的"数据"表.由于某些原因,即使公式引用刚刚填充的单元格,也不会重新计算更新数据.
Excel中的计算选项变为自动,甚至将其转为手动,按F9强制重新计算不起作用.
我找到了一些奇怪的方法来完成这项工作:1.选择具有适当公式的特定单元格并按Enter键(对于每个单元格)2.再次将故障单元格上的公式拖动(用完全相同的公式覆盖公式) ..)3.参考其他文件(比如data2.xlsx)的数据表确实有效,但这对我来说是最后的选择.我不想用单独的数据文件膨胀文件结构.另外,考虑打开这两个文件以使其工作的可怕要求.
提前致谢.
看到此链接获得了一些点击并且解决方案隐藏在评论部分,答案如下:
wb$setForceFormulaRecalculation(T)
这应该适用于大多数包(至少是基于 rJava 的包),因为这个 java 方法是在 excel 中传递的,因此不是由 R 语言决定的。
| 归档时间: |
|
| 查看次数: |
2772 次 |
| 最近记录: |