OVH Cloud OVH Cloud

Mise à jour automatique d'un classeur.

8 réponses
Avatar
Chaff'
Bonjour à tous !!
Dans la société pour laquelle je travaille, nous avons fréquemment à éditer
des feuilles Excel appelées "Fiches d'intervention". Chacune est enregistrée
dans un classeur qui ne contient qu'une seule feuille. Je suis chargé de
synthétiser ces feuilles, et l'idéal serait de créer un nouveau classeur qui
regrouperait toutes ces fiches d'intervention, à raison d'une par feuille
Excel. Cela est facile "à la main", mais ne serait-il pas possible
d'automatiser ce processus en faisant qu'à chaque ouverture, ce nouveau
classeur se remette à jour et ait pour feuilles toutes les fiches
d'intervention de l'année?
Merci d'avance de votre réponse.
Chaff'.

8 réponses

Avatar
Daniel
Bonjour.
Une fois que les classeurs "feuilles d'intervention" sont regroupés dans le
classeur unique, que deviennent-ils ? sont-ils supprimés ? C'est à dire qu'à
chaque ouverture du classeur unique, faut-il récupérer tous les classeurs ou
uniquement ceux qui ne sont pas traités ?
Cordialement.
Daniel
"Chaff'" <Chaff'@discussions.microsoft.com> a écrit dans le message de news:

Bonjour à tous !!
Dans la société pour laquelle je travaille, nous avons fréquemment à
éditer
des feuilles Excel appelées "Fiches d'intervention". Chacune est
enregistrée
dans un classeur qui ne contient qu'une seule feuille. Je suis chargé de
synthétiser ces feuilles, et l'idéal serait de créer un nouveau classeur
qui
regrouperait toutes ces fiches d'intervention, à raison d'une par feuille
Excel. Cela est facile "à la main", mais ne serait-il pas possible
d'automatiser ce processus en faisant qu'à chaque ouverture, ce nouveau
classeur se remette à jour et ait pour feuilles toutes les fiches
d'intervention de l'année?
Merci d'avance de votre réponse.
Chaff'.


Avatar
Excel...lent
Salut Chaff,

Alors supposons que le fichier créant les fiches d'intervention se nomme :
Interv.xls
Que le fichier récapitulatif se nomme : Recapinterv.xls ( Dans ce fichier
prévois-toi une feuille " bidon " que tu nommera ACCUEIL )

Voici le code que tu peux mettre dans un module du fichier créant les fiches
d'intervention ( interv.xls ), charge à toi de voir comment tu appelera ce
code une fois ta fiche d'intervention éditée. sois par raccourci clavier,
sois par CommandButton, sois directement dans la feuille représentant ta
fiche d'intervention, avec par exemple un déclenchement sur un "Selection
Change ".

Sub CreateFichCopy()
'
Dim FicheCree
'
FichRecap = "Recapinterv.xls"
FichRecap = ThisWorkbook.Path & FichRecap
'
' ouverture fichier RECAP
Workbooks.Open Filename:=FichRecap
' activation fiche Intervenion
Windows("interv.xls").Activate
' Sauvegarde fiche Intervention
ActiveWorkbook.Save
' Activation page active donc de la Fiche Intervention
' Affectation à une variable du nom de la feuille à copier
FicheCree = ActiveSheet.Name
' Activation fichier RECAP pour effectuer copie
Windows("recapinterv.xls").Activate
' Recherche dans fichier RECAP si feuille déjà existante
' Si OUI alors fermeture fichier RECAP et sortie du code --> retour au
fichier Interv
For a = 1 To ActiveWorkbook.Worksheets.Count
If UCase(FicheCree) = UCase(Worksheets(a).Name) Then
MsgBox "Vous possédez une feuille portant déjà ce nom"
Windows("recapinterv.xls").Close
Exit Sub
End If
Next
' activation fichier fiche Intervenion
Windows("interv.xls").Activate
' Recopie de cette feuille dans le fichier RECAP
ActiveSheet.Copy After:=Workbooks("recapinterv.xls").Sheets(1)
' Activation fichier RECAP
Windows("recapinterv.xls").Activate
' Sauvegarde fichier RECAP
ActiveWorkbook.Save
' Fermeture fichier RECAP
Windows("recapinterv.xls").Close
'
End Sub

Les lignes du code précédées d'in petit ( ' ) sont des commentaires pour
aider à la compréhension du code. Alles apparaîtront en vert.

Désolé mais je n'ai pas pu faire plus court. J'ai fait un essai à la maison
et ça marche.

Bon courage.

Cordialement.

Marc
Avatar
JB
Bonjour,

Synthèse de plusieurs classeurs (vendeur1.xls,vendeur2.xls,....dans un
seul)

Sub consolideClasseurs()
ChDir ActiveWorkbook.Path
Set classeurMaitre = ActiveWorkbook
sup
nf = Dir("vendeur*.xls")
Do While nf <> ""
Workbooks.Open Filename:=nf
Sheets(1).Copy
After:=classeurMaitre.Sheets(classeurMaitre.Sheets.Count)
classeurMaitre.Sheets(classeurMaitre.Sheets.Count).Name = nf
Workbooks(nf).Close False
nf = Dir ' classeur suivant
Loop
Sheets(1).Select
End Sub

Sub sup()
Application.DisplayAlerts = False
If Sheets.Count > 1 Then
Sheets("Accueil").Move before:=Sheets(1)
Sheets(2).Select
For i = 2 To Sheets.Count
ActiveSheet.Delete
Next i
End If
End Sub

Cordialement JB


Bonjour à tous !!
Dans la société pour laquelle je travaille, nous avons fréquemment à éditer
des feuilles Excel appelées "Fiches d'intervention". Chacune est enregi strée
dans un classeur qui ne contient qu'une seule feuille. Je suis chargé de
synthétiser ces feuilles, et l'idéal serait de créer un nouveau cla sseur qui
regrouperait toutes ces fiches d'intervention, à raison d'une par feuil le
Excel. Cela est facile "à la main", mais ne serait-il pas possible
d'automatiser ce processus en faisant qu'à chaque ouverture, ce nouveau
classeur se remette à jour et ait pour feuilles toutes les fiches
d'intervention de l'année?
Merci d'avance de votre réponse.
Chaff'.


Avatar
jps
hum, Marc
il n'y a pas UN classeur avec plusieurs fiches d'intervention mais UNE fiche
d'intervention pour une foultitude de classeurs, si j'ai bien compris
Chaff...et JB, une fois de plus, nous donne le bon trick....
ce sont les "mille mercis" de madeleine qui m'ont fait intervenir ici car
j'étais trop vesqué d'avoir été écarté de ces remerciements...
jps

"Excel...lent" a écrit dans le message de news:

Salut Chaff,

Alors supposons que le fichier créant les fiches d'intervention se nomme :
Interv.xls
Que le fichier récapitulatif se nomme : Recapinterv.xls ( Dans ce fichier
prévois-toi une feuille " bidon " que tu nommera ACCUEIL )

Voici le code que tu peux mettre dans un module du fichier créant les
fiches
d'intervention ( interv.xls ), charge à toi de voir comment tu appelera ce
code une fois ta fiche d'intervention éditée. sois par raccourci clavier,
sois par CommandButton, sois directement dans la feuille représentant ta
fiche d'intervention, avec par exemple un déclenchement sur un "Selection
Change ".

Sub CreateFichCopy()
'
Dim FicheCree
'
FichRecap = "Recapinterv.xls"
FichRecap = ThisWorkbook.Path & FichRecap
'
' ouverture fichier RECAP
Workbooks.Open Filename:=FichRecap
' activation fiche Intervenion
Windows("interv.xls").Activate
' Sauvegarde fiche Intervention
ActiveWorkbook.Save
' Activation page active donc de la Fiche Intervention
' Affectation à une variable du nom de la feuille à copier
FicheCree = ActiveSheet.Name
' Activation fichier RECAP pour effectuer copie
Windows("recapinterv.xls").Activate
' Recherche dans fichier RECAP si feuille déjà existante
' Si OUI alors fermeture fichier RECAP et sortie du code --> retour au
fichier Interv
For a = 1 To ActiveWorkbook.Worksheets.Count
If UCase(FicheCree) = UCase(Worksheets(a).Name) Then
MsgBox "Vous possédez une feuille portant déjà ce nom"
Windows("recapinterv.xls").Close
Exit Sub
End If
Next
' activation fichier fiche Intervenion
Windows("interv.xls").Activate
' Recopie de cette feuille dans le fichier RECAP
ActiveSheet.Copy After:=Workbooks("recapinterv.xls").Sheets(1)
' Activation fichier RECAP
Windows("recapinterv.xls").Activate
' Sauvegarde fichier RECAP
ActiveWorkbook.Save
' Fermeture fichier RECAP
Windows("recapinterv.xls").Close
'
End Sub

Les lignes du code précédées d'in petit ( ' ) sont des commentaires pour
aider à la compréhension du code. Alles apparaîtront en vert.

Désolé mais je n'ai pas pu faire plus court. J'ai fait un essai à la
maison
et ça marche.

Bon courage.

Cordialement.

Marc




Avatar
Excel...lent
Hello mon ami,

Ouais ben t'inquiète pas pour cette personne, c'était des " milles mercis "
empoisonnés de toute manière. Comme on dit par chez moi :" Fait plaisir à
Bertrand il te le rend en cagant !"

Je la range dans la même case que certains PLOUKS qui traînent sur ce forum
et qui ont oubliés les règles élémentaires de politesse... :-((

Voilà quelq'un à qui j'avais offert de l'aide et qui m'a donc relancé par
mail. Je lui ai répondu et j'attends toujours le retour, ne serait ce que "
Merde " , sic ! ! ! Alors tu vois soit pas "jalouse" tu as rien manqué...
lol

A part sur le fil qui nous interresse j'aurais encore tout compris de
travers, c'est balot ça. Moi qui était content de mon usine à gaz que j'ai
mis la nuit entière à faire..........mdr

En effet j'avais pas vu que notre ami voulais aussi reprendre les fiches
déjà existantes. Mon truc partait à partir d'aujourdh'ui. Avec ce cagnard à
la barraque j'abuse un peu trop de l'anisette je ne vois que ça qui
pourrrait expliquer cela. ;-)

Sinon entre deux verres ( Hic ! ) j'ai testé la soluce à JB est bien sur il
tombe pile dessus " Lui ", ça devient énervant...... Merci JB parceque mine
de rien ta soluce m'interresse alors je me suis permis de la mettre de côté.
C'est un freeware j'espère. ;-)))

Allez so long chers amis.

Amicalement.

Marc
Avatar
jps
:-)))))
mais ne mélange pas JB et anisette, steplé :-)
jps

"Excel...lent" a écrit dans le message de news:
uk4$
Hello mon ami,

Ouais ben t'inquiète pas pour cette personne, c'était des " milles mercis
"
empoisonnés de toute manière. Comme on dit par chez moi :" Fait plaisir à
Bertrand il te le rend en cagant !"

Je la range dans la même case que certains PLOUKS qui traînent sur ce
forum
et qui ont oubliés les règles élémentaires de politesse... :-((

Voilà quelq'un à qui j'avais offert de l'aide et qui m'a donc relancé par
mail. Je lui ai répondu et j'attends toujours le retour, ne serait ce que
"
Merde " , sic ! ! ! Alors tu vois soit pas "jalouse" tu as rien manqué...
lol

A part sur le fil qui nous interresse j'aurais encore tout compris de
travers, c'est balot ça. Moi qui était content de mon usine à gaz que j'ai
mis la nuit entière à faire..........mdr

En effet j'avais pas vu que notre ami voulais aussi reprendre les fiches
déjà existantes. Mon truc partait à partir d'aujourdh'ui. Avec ce cagnard
à
la barraque j'abuse un peu trop de l'anisette je ne vois que ça qui
pourrrait expliquer cela. ;-)

Sinon entre deux verres ( Hic ! ) j'ai testé la soluce à JB est bien sur
il
tombe pile dessus " Lui ", ça devient énervant...... Merci JB parceque
mine
de rien ta soluce m'interresse alors je me suis permis de la mettre de
côté.
C'est un freeware j'espère. ;-)))

Allez so long chers amis.

Amicalement.

Marc




Avatar
Excel...lent
Ca risque pas au pays on à tous le foie génétiquement modifié de naissance.
Il ne tolère que l'anisette.

La boisson des Rosbeef comme disait "Jaquouille" : " bah ! Ca puire !"

Bon allez c'est l'heure du 102, j'y vais. Hic !

Marc
Avatar
Chaff'
Bonjour Daniel,
Tout d'abord, je vous remercie de votre réponse.
Une fois regroupés, les classeurs "feuilles d'intervention" ne sont pas
supprimés. Le but de l'opération est en fait de pouvoir consulter les
classeurs séparéments d'une part et les classer dans des dossiers différents,
et de créer ce nouveau classeur regroupant toutes ces fiches d'intervention
afin de pouvoir toutes les avoir sous les yeux en même temps. Je souhaite de
plus que ces documents soient intéractifs, c'est-à-dire que ces fiches ayant
sans doute à être complétées après leur création, donc il faut bien
évidemment que le nouveau classeur, qui les contient toutes, subisse les
mêmes modifications...
Merci d'avance.
Chaff'


Bonjour.
Une fois que les classeurs "feuilles d'intervention" sont regroupés dans le
classeur unique, que deviennent-ils ? sont-ils supprimés ? C'est à dire qu'à
chaque ouverture du classeur unique, faut-il récupérer tous les classeurs ou
uniquement ceux qui ne sont pas traités ?
Cordialement.
Daniel
"Chaff'" <Chaff'@discussions.microsoft.com> a écrit dans le message de news:

Bonjour à tous !!
Dans la société pour laquelle je travaille, nous avons fréquemment à
éditer
des feuilles Excel appelées "Fiches d'intervention". Chacune est
enregistrée
dans un classeur qui ne contient qu'une seule feuille. Je suis chargé de
synthétiser ces feuilles, et l'idéal serait de créer un nouveau classeur
qui
regrouperait toutes ces fiches d'intervention, à raison d'une par feuille
Excel. Cela est facile "à la main", mais ne serait-il pas possible
d'automatiser ce processus en faisant qu'à chaque ouverture, ce nouveau
classeur se remette à jour et ait pour feuilles toutes les fiches
d'intervention de l'année?
Merci d'avance de votre réponse.
Chaff'.