Заполнение ячеек Excel с поддержкой макросов из среды R/outside
У меня есть шаблон с поддержкой макросов в Excel, который я хочу заполнить программно из R.
У меня есть процесс R, который извлекает различный набор данных для каждого элемента, который я обрабатываю, обрабатывает их, а затем я хочу, чтобы он продублировал и заполнил шаблон для каждого набора данных, минуя необходимость заполнять шаблон вручную для каждого элемента. набор данных.
Я использую пакет XLConnect R, однако он не поддерживает файлы.xlsm. Я думал об использовании RExcel, но я хочу запустить программу из среды R, а не из Excel (также у меня было много трудностей при попытке установить RExcel).
Это для процесса проверки базы данных учебной программы, который должен проводиться каждый год, поэтому заполнение шаблона вручную для каждого отдельного курса в моем отделе просто неосуществимо и должно выполняться автоматически. Одна из причин, по которой я хочу использовать R, заключается в том, что я могу создать хороший пользовательский интерфейс с Shiny, где книги Excel просто ощущаются как смерть.
Есть ли другой способ программно заполнить макросоты Excel и заставить макросы принимать и запускать данные, или мне нужно изучить VBA и написать программу в Excel для этого?
1 ответ
Что-то вроде следующего:
library(xlsx)
xl <- loadWorkbook("Workbook1.xlsm")
sheets <- getSheets(xl)
cells <- getCells(getRows(sheets[[1]]))
setCellValue(cells[[1]], 400)
saveWorkbook(xl, "NewWorkbook.xlsm")
сохранит все макросы из Workbook1.xlsm
в то время как фактические ячейки заполняются данными.