Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des 200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de 1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique", "Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien, la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des 200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de 1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique", "Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien, la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des 200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de 1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique", "Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien, la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+
Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon, Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" a écrit dans le message de news:
437ef38b$0$29183$Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
dumême type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalementaucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
àdes cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dontun extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbedes âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
lamacro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon, Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" <anonymousA@wanadoo.fr> a écrit dans le message de news:
437ef38b$0$29183$8fcfb975@news.wanadoo.fr...
Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+
Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon, Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" a écrit dans le message de news:
437ef38b$0$29183$Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200 fichiers
dumême type (cad à 1 seule feuille) qui est ouvert ; à la demande, je veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalementaucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font référence
àdes cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles, et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors de
1 à4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dontun extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbedes âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre bien,
lamacro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
La réponse est située dans le fait que ^parmi les 3 feuilles , tu as une
feuille graphique et qui n'est pas une worksheet. Donc plantage. Il
suffit de remplacer worksheets par sheets et ca fonctionnera.
A+Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon,
Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" a écrit dans le message de news:
437ef38b$0$29183$Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200
fichiers
dumême type (cad à 1 seule feuille) qui est ouvert ; à la demande, je
veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalementaucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font
référence
àdes cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles,
et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors
de
1 à4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dontun extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbedes âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre
bien,
lamacro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
La réponse est située dans le fait que ^parmi les 3 feuilles , tu as une
feuille graphique et qui n'est pas une worksheet. Donc plantage. Il
suffit de remplacer worksheets par sheets et ca fonctionnera.
A+
Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon,
Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" <anonymousA@wanadoo.fr> a écrit dans le message de news:
437ef38b$0$29183$8fcfb975@news.wanadoo.fr...
Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+
Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel
2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200
fichiers
du
même type (cad à 1 seule feuille) qui est ouvert ; à la demande, je
veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"
(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200
fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalement
aucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font
référence
à
des cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles,
et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors
de
1 à
4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.
Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dont
un extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbe
des âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre
bien,
la
macro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine
La réponse est située dans le fait que ^parmi les 3 feuilles , tu as une
feuille graphique et qui n'est pas une worksheet. Donc plantage. Il
suffit de remplacer worksheets par sheets et ca fonctionnera.
A+Je dois avouer que je n'avais pas penser à vérifier cela.
Malheureusement pour moi (mais honneur à Michdenis - de toute façon,
Errare
Humanim est !) tant l'ortjographe que les espaces sont OK !
Mystère...
Merci à toi Anonymous.
(mias toujours en stand-by)!
Antoine
"anonymousA" a écrit dans le message de news:
437ef38b$0$29183$Bonjour,
C'est sans doute qu'il y a une erreur dans l'écriture ( l'orthographe ou
le nombre d'espaces) dans les items du Array("Statistiques", "Etat
Démographique", "Courbe des âges") ou qu'il y a une différence
orthographique entre ces items et la réalité des noms de feuilles de ton
classeur.
Pour le reste , la syntaxe est evidemment correcte, mais qui en aurait
douté !!!
A+Bonjour,
J'ai une petite difficulté que je n'arrive pas à résoudre en VBA sur
Excel2000.
But de la macro : j'essaie de transformer un fichier à feuille unique
(contenant les effectifs d'une entreprise), en fichier à 4 feuilles par
copiage de 3 feuilles (permettant d'obtenir différentes informations
statistiques et démographiques) provenant d'un autre fichier .
Plus concrètement, je pars d'un fichier "Lambda" parmi env. 200
fichiers
dumême type (cad à 1 seule feuille) qui est ouvert ; à la demande, je
veux
pouvoir activer une macro qui ouvrira un fichier différent "Noemie de
base"(téléchargeable ici : http://cjoint.com/?ltjAmXa5qn , et où j'ai
symboliquement mis 1 salarié dans la feuille salarié pour "fixer" les
idées), et dont la 1ère feuille (salariés) est à semblable à celle des
200fichiers à 1 feuille (sauf que cette 1ère feuille ne contient
normalementaucun salarié - société fictive à effectif zéro !), mais qui possède en
plus, 3 autres feuilles de calcul qui, dans leur formules font
référence
àdes cellules de la 1ére feuille.
Lorsque la macro est lancée, elle ouvre donc le fichier à 4 feuilles,
et
copie les 3 feuilles de calcul sur le fichier Lambda, qui passe alors
de
1 à4 feuilles, donnant ainsi tous les renseignements complémentaires
souhaités.Après plusieurs jours, lorsqu'il n'y a plus à exploiter les 3 feuilles
supplémentaires, une autre macro supprimera simplement les 3 feuilles
ajoutées.
J'ai déjà posé une 1ère question sur le forum et Michdenis m'a envoyé
dontun extrait est ci-dessous :
Dim Wk As Workbook
Dim Chemin As String
Chemin = ActiveWorkbook.Path
Set Wk = ActiveWorkbook
Workbooks.Open Filename:=Chemin & "Noemie de base.xls"
With Workbooks("Noemie de base.xls")
With .Worksheets(Array("Statistiques", "Etat Démographique",
"Courbedes âges"))
.Copy Before:=Wk.Sheets(1)
End With
End With
Set Wk = Nothing
Mais, lorque je lance la macro, si le fichier à 4 feuilles s'ouvre
bien,
lamacro se bloque, le débogeur se cale sur la ligne "with
.worksheets(Array..." et affiche : erreur d'exécutiuon 9 - l'indice
n'appartient pas à la sélection, et aucune feuille n'est alors copiée.
Je ne sais pas pourquoi !
Je ne sais si quelqu'un a une petite idée sur la question ?
Merci
Antoine