forked from gdmcdonald/R-tricks
-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathreadXlsxFilesFunction.r
More file actions
37 lines (31 loc) · 1.18 KB
/
Copy pathreadXlsxFilesFunction.r
File metadata and controls
37 lines (31 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
library(openxlsx)
readAllFilesInFolder<-function(pathToDirectory){
#get the excel file names
prevDirectory<-getwd()
setwd(pathToDirectory)
files <- list.files(pattern = "\\.xlsx$")
notTempFiles<-files[grepl("^([^~]).*",files)]
#first loop to find number of sheets in each file
numberOfSheets<-0
for (iter1 in 1:length(notTempFiles)) {
fileName<-notTempFiles[iter1]
sheetNames<-getSheetNames(fileName)
numberOfSheets<-numberOfSheets+length(sheetNames)
}
#initialize and empty list of the correct length
listOfFilesAndSheets<- vector("list", numberOfSheets)
current<-0
for (iter1 in 1:length(notTempFiles)) {
fileName<-notTempFiles[iter1]
sheetNames<-getSheetNames(fileName)
for (iter2 in 1:length(sheetNames)) {
current<-current+1
listOfFilesAndSheets[[current]]<-as.data.frame(read.xlsx(xlsxFile = fileName,
sheet = iter2,
skipEmptyRows = FALSE))
names(listOfFilesAndSheets)[current]<-paste0(sheetNames[iter2],"-",fileName)
}
}
setwd(prevDirectory)
return(listOfFilesAndSheets)
}