Bonjour, je voudrais utiliser la boucle for pour appliquer des modifications à tous les autres fichiers d'un dossier contenant plusieurs fichiers excel, mais je suis bloqué.
Voici ou j'en suis :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
library(gdata)
#choisir le repertoire de travail 
setwd("~Documents/Programmer R/Megadataxls")
# get all the right file names
file_names = list.files(getwd())
file_names = file_names[grepl(".xls",file_names)]
 
#get the read.xls function working
Megadata = read.xls("connaissement_1_lot1320.xlsx", header=T, stringsAsFactors = F)
 
#suppression des 7 premieres lignes- debut de modification du fichier excel
corps <-tail(Megadata,-7)
 
#suppression de la colonne 7
corps <-corps[,-7]
 
#suppression de tous sauf les 7 premieres lignes
entete<-head(Megadata,7)
 
#transposition en colonnes de l'entete
entete <- t(entete)
 
#suppression des lignes et espace unitil
entete<-head(entete,3)
entete <- entete[-2,]
entete <- entete[,-7]
 
#enregistrer le fichier entete en csv dans un autre dossier
setwd("~/Documents/Programmer R/Megadatacsvexport")
write.table(entete, file = "entete.csv", sep = ",", col.names = NA,
            qmethod = "double")
 
#importer entete en fichier csv et suppression de la ligne 1 et 2
entete <- read.csv("entete.csv", header=F)
entete <- tail(entete,2)
entete <- tail(entete,1)
 
#fusion des 2 tableaux les champs vides seront remplace par NA-   Fin des modifications du fichier excel
Megadata <- cbindX(entete,corps)
 
 
 
# utilisation de la boucle for pour appliquer les modifications du fichier precedent aux autres - c'est la que ca coince
 
data.files = list.files()
for (file in data.files[1]) {
  Megadata1 = read.xls("connaissement_1_lot1320.xlsx", header=T, stringsAsFactors = F)
 
# get all the right file names
file_names = list.files(getwd())
file_names = file_names[grepl(".xls",file_names)]
 
#suppression des 7 premieres lignes
corps <-tail(Megadata1,-7)
 
#suppression de la colonne 7
corps <-corps[,-7]
 
#suppression de tous sauf les 7 premieres lignes
entete<-head(Megadata1,7)
 
#transposition en colonnes de l'entete
entete <- t(entete)
 
#suppression des lignes et espace unitil
entete<-head(entete,3)
entete <- entete[-2,]
entete <- entete[,-7]
 
#enregistrer le fichier entete en csv dans un autre dossier
setwd("/home/essis/Documents/Programmer R/Megadatacsvexport")
write.table(entete, file = "entete.csv", sep = ",", col.names = NA,
            qmethod = "double")
 
#importer entete en fichier csv et suppression de la ligne 1 et 2
entete <- read.csv("entete.csv", header=F)
entete <- tail(entete,2)
entete <- tail(entete,1)
 
#fusion des 2 tableaux les champs vides seront remplace par NA
Megadata2 <- cbindX(entete,corps)
 
#ajout a Megadata
 
Megadata = rbind(Megadata, Megadata2)
}
Tous les fichiers excel on la même structure, je voudrais les avoir tous dans un seul fichier appelé "Megadata".

Quelqu'un peut-il m'aider, please !