xlconnect R软件包将禁用Excel模板中的计算

我试图从R模板中写入原始数据,然后运行一个小的VBAmacros来将原始数据转化为一个很好的和可expression的东西。 我使用XLConnect。 问题是XLConnect似乎禁用Excel工作表中的计算。

这里是我的R代码写我的数据框到Excel:

VaR.dataframe = structure(list(names = c("VaR.montecarlo", "TVaR.montecarlo", "VaR.historic.1yr", "VaR.historic.2yr", "VaR.historic.3yr", "VaR.gaussian"), X95. = c(0.0363375421892311, 0.0507403479325009, 0.0402675195649073, 0.0400483852784169, 0.0357565527744698, 0.038409381028186), X97.5. = c(0.0473956950987274, 0.0598796459552848, 0.0528350062512669, 0.0483427549702983, 0.0432047576422228, 0.0488252950503447), X99. = c(0.0589594848085542, 0.0714812674589506, 0.06597791329211, 0.0596859927016254, 0.0544507369487263, 0.0609360460943547)), .Names = c("names", "X95.", "X97.5.", "X99."), class = "data.frame", row.names = c(NA, -6L)) template_filename = "C:\\Temp\\my_template.xlsm" writeWorksheetToFile(file = template_filename, data = VaR.dataframe, sheet = "VaR") 

这进入一个叫做VaR的原始表单,我不会向客户展示。 我会向客户展示的东西看起来更像这样:

在这里输入图像说明

表中的所有数字都是VLOOKUP公式到原始VaR表中。 最后一步是运行一个小的VBAmacros,它将在公式中复制粘贴特殊值,并删除可怕的橙色行和列。

问题是 R脚本更新我的Excel模板后,公式不起作用。 即使我打开工作簿并按F9来计算,它们都是#N/A 这将保持真实,直到我按Ctrl-Alt-F9进行强制计算。

我的第一本能是在我的VBAmacros中强制Ctrl-Alt-F9组合键:

 Call Application.SendKeys("^%{F9}") 

但是,这似乎并不奏效。

有谁知道如何强制macros中的计算? 或build议一个Excel写作R包不会破坏我的电子表格?

对于Ctrl / Alt / F9尝试Application.CalculateFull