How to password protect Excel exported from dataframe?

I want to password protect this dataframe that I have created in R and I tried using protectWorkbook() function from openxlsx and it does not work, I am still able to open the excel normally without entering password.

df = data.frame(Year = c(2018,2019,2020,2018,2019,2020,2018,2019,2020),
                Country = c("Germany","Germany","Germany", "Japan", "Japan", "Japan",  "Thailand", "Thailand", "Thailand"), 
                Count = c(17, 15, 60, 23, 25, 60, 50, 18, 31))

wb = createWorkbook()
addWorksheet(wb, "Master")
writeDataTable(wb, "Master", df, tableStyle = "TableStyleLight9")
yellow_style = createStyle(fgFill = "#FFFF00")
y = which(colnames(df) == "Count")
x = which(abs(df$Count) > 32)
addStyle(wb, sheet = "Master", style = yellow_style, rows = x+1, col = y)
protectWorkbook(wb, protect = TRUE, password = "Password", lockStructure = TRUE)
saveWorkbook(wb, "Master.xlsx", overwrite = TRUE), "Master2.xlsx", password = "Pass")

I tried using from library but my Rstudio crashes

I had a quick try with the xlsx package. The code below works for me.

write.xlsx2(x=iris, file = "iris.xlsx", password = "password")

This topic was automatically closed 21 days after the last reply. New replies are no longer allowed.

If you have a query related to it or one of the replies, start a new topic and refer back with a link.