R (3.0.2)/MSOffice 2013/Win7Экспорт данных из R в Excel: формулы не пересчитывать
Предположим, мы существующий data.xlsx файл с двумя листами - "данные" и "известково".
лист «данные» заполняется через 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)
Так вот возникает проблема - у меня есть «известково» лист, который ссылается на «данные» лист с формулами. По какой-то причине обновление данных не будет пересчитываться, даже если формулы относятся к только что заполненным ячейкам.
Функция вычисления в Excel превращается в автоматическую, даже поворачивая ее в ручную и нажимая F9, чтобы принудительно пересчитать, т работы.
Я нашел несколько странных способов сделать эту работу: 1. выберите конкретную ячейку, в которой есть правильная формула, и нажмите enter (для каждой ячейки). 2. Перетащите формулы над неисправными ячейками снова (перепишите формулу с помощью точно такая же формула ..) 3. Ссылаясь на лист данных из другого файла (скажем, data2.xlsx), работает, но для меня это последний вариант. Я не хочу раздувать структуру файлов с отдельными файлами данных. Кроме того, рассмотрите это ужасное требование об открытии обоих файлов, чтобы заставить его работать.
Заранее спасибо.
ли ворота это сделать? – pnuts
Нет, это не так. –
Я могу воспроизвести эту точную проблему с Excel2010 на Win7. Моя рекомендация - подать отчет об ошибке с автором XLConnect и тем временем попробовать работать с пакетом 'xlsx'. Кстати, я пробовал пропустить вашу строку 'setStyleAction', без каких-либо изменений в результатах.Я думаю, что что-то в XLConnect ломает все, что использует Excel, чтобы «связывать» формулы со своими ссылочными ячейками. –