Nombre jours de formation

gotlapal

XLDnaute Junior
Bonjour, j'ai un soucis pour construire un fichier de gestion du nombre de jours de formation
Je souhaite calculer le nombre de jours (Week-end compris) de formation effectué. Le calcul s'effectue sur une période de 1 an à compter de la date de début de la dernière période de formation mais en comptabilisant quand même la dernière période.

J'ai mis un exemple avec quelques souhaits supplémentaires si quelqu'un est inspiré.

J'ai essayé avec la formule JOURS360 mais il me manque un jour dans chaque période.

Merci d'avance pour votre aide.
 

Pièces jointes

  • Formation.xls
    28.5 KB · Affichages: 70
  • Formation.xls
    28.5 KB · Affichages: 71
  • Formation.xls
    28.5 KB · Affichages: 71

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Bonjour Gotlapal, et à ceux qui passeront par ici,

Tu peux tenter de créer un Bouton avec:

Code:
Private Sub CommandButton1_Click()
ActiveSheet.Cells(17, 1).Value = Int(CDec(CDate(ActiveSheet.Cells(6, 2).Value))) - Int(CDec(CDate(ActiveSheet.Cells(5, 2).Value)))
End Sub

Ce n'est qu'un exemple montrant le calcul du nombre de jours entre deux dates.

Tu pourrais peut-être partir avec cette idée.

Je reste disposé, si besoin et si cela te tente, à t'en expliquer le détail.

Amicalement

Yann
 

gotlapal

XLDnaute Junior
Re : Nombre jours de formation

Merci pour ta réponse.
La macro fonctionne bien mais le calcul n'est pas celui que je recherche.

En effet, prenons cet exemple: formation entre le 01/01/10 et le 10/01/10 ça fait 10 jours de formations.
Or ta macro n'en compte que 9 (comme la formule JOURS360).
Si je n'ai qu'un seul jour de formation, ça me met un résultat quelconque.


De plus, le bouton ne me servirai qu'à "mettre à jour" mes données en supprimant les périodes obsolètes, en retirant les colonnes inutiles et en mettant les colonnes dans l'ordre alphabétique.


En tout cas, ta macro me servira pour d'autres fichiers.
merci
 

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Re gotlapal,

Je n'ai effectivement que copié un truc que j'avais fait par ailleurs
où je cherchais combien de jours il restait avant le 10/01/2009

J'ai modifié le code comme ceci:

Code:
Private Sub CommandButton1_Click()
ActiveSheet.Cells(17, 1).Value = Int(CDec(CDate(ActiveSheet.Cells(6, 2).Value))) - Int(CDec(CDate(ActiveSheet.Cells(5, 2).Value)) - 1)
End Sub

Tu verras que si le début et la fin sont du même jour; tu auras "1" comme résultat.

Avant de peaufiner en supprimant les périodes échues et automatiser la mise en page de ta feuille, il serait bien que tu résolves la première partie de ta question: Calculer le nombre de jours.

Je t'ai proposé une façon de faire relative à uniquement ce point.
Je te laisse le soin de boucler sur ta feuille pour obtenir les totaux que tu souhaites.

Si je suis tombé à coté de la plaque... Pas grave! :)

Bon courage pour la suite.

Amicalement.

Yann
 

gotlapal

XLDnaute Junior
Re : Nombre jours de formation

C'est super!

j'ai adapté ta macro pour que ça fonctionne avec 2 périodes et ça fonctionne.

J'ai toujours le problème lorsqu'un formation ne dure qu'un seul jour, je suis obligé de saisir la même date dans les deux case mais c'est pas un soucis.

Est-il possible maintenant de ne pas utiliser de bouton et que la macro s'exécute automatiquement dès la saisie des dates?

Ensuite, est il possible dupliquer la formule pour que ne sois pas obligé de la taper pour 140 colonnes et pour 60 lignes?

Tu as raison, pour la mise en forme, on verra après.


Merci:)
 

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Re gotlapal,

J'ai toujours le problème lorsqu'un formation ne dure qu'un seul jour, je suis obligé de saisir la même date dans les deux case mais c'est pas un soucis

Il faudrait savoir ce que tu veux!!!
Si elle ne dure qu'un jour, c'est obligatoirement la même date.
Si tu passes au lendemain: 1 + 1 = 2 !!!

Est-il possible maintenant de ne pas utiliser de bouton et que la macro s'exécute automatiquement dès la saisie des dates?

Oui cela est possible, mais pour diverses raisons,
je me refuse d'appliquer des évènements à une feuille.

Si tu as 140 colonnes, et 60 lignes, c'est que ton tableau est mal conçu.

Pour moi, 140 personnes suivant des formations (Hum! Ce n'est pas une petite entreprise!)
S'il y a deux stages potentiels par semaine (Hum! Bravo la formation continue!)

Bref! Nous en serions à 140 lignes correspondant à la liste du personnel,
et avec 2 colonnes où écrire la période de formation la personne.

Le stage fini, celle-ci n'est plus dans la liste, mais le nombre de jours
et les dates resteraient enregistrés dans une autre feuille.

As-tu quelques notions de VBA?
Sinon, je ne vais pas pouvoir t'aider beaucoup plus.

Amicalement.

Yann
 

gotlapal

XLDnaute Junior
Re : Nombre jours de formation

T'as raison pour la taille, c'est peut être un peu beaucoup pour les colonnes et lignes.
On peut réduire de 2/3 au moins.


Pour les notions de VBA, elles sont limitées mais j'arrive à modifier un code pour l'adapter à mes tableaux et si j'ai la structure, je suis capable de la travailler.

En revanche, il m'est impossible de partir d'une feuille blanche et de la remplir de code.

Pour la mise en forme, je suis en mesure d'enregistrer des macros via le tableur et quand je galère je persévère.

En ce qui concerne la tableau en lui même, je préfère avoir toutes les dates sur la même feuille.

je vais conserver ta macro pour les calculs qui sont justes maintenant.
A la limite, je vais la dupliquer manuellement pour plusieurs colonnes et lignes.

Est-il possible supprimer via un autre bouton les périodes de stage dont la date de début date de plus d'un an?


En tout cas merci pour ton aide
 

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Bonjour gotlapal, et à ceux qui passeront par ici,

Ainsi que je te l'avais promis: Voici une adaptation en VBA de ton idée initiale:

Le plus difficile te sera de piger le fonctionnement de la ListView!

Mais c'est comme les Maths, quand on en a eu le déclic; on en déduit que c'était très simple.
Le reste: Effacement des stages échus, mise en mémoire des périodes passées, et c. seront de niveau CM2!

A noter qu'il n'est pas pour rien que ce contrôle est régulièrement utilisé dans les logiciels
(Exp: Une liste de fichiers sous Windows)

A toi de tester, (Sur une copie de préférence) en t'amusant à bidouiller les codes.

C'est de cette façon que j'ai beaucoup appris......... A toi de jouer itou.

Je reste à ta disposition pour t'aider sur les points dont tu ne comprendrais pas le sens.

Sous réserve de m'avoir prouvé que tu auras déjà bien avancé par toi-même!!!... Au Boulot! :)

Amicalement,

Yann
 

Pièces jointes

  • STAGES.zip
    23.5 KB · Affichages: 48
  • STAGES.zip
    23.5 KB · Affichages: 48
  • STAGES.zip
    23.5 KB · Affichages: 45

gotlapal

XLDnaute Junior
Re : Nombre jours de formation

Bonjour,

Je suis revenu sur ce code que Yann-56 m'a donné:

Code:
Private Sub CommandButton1_Click()
ActiveSheet.Cells(17, 1).Value = Int(CDec(CDate(ActiveSheet.Cells(6, 2).Value))) - Int(CDec(CDate(ActiveSheet.Cells(5, 2).Value)) - 1)
End Sub

J'ai remarqué que lorsque je ne rentre pas de date (que je laisse les cellules vides), j'obtiens "1" dans la case cible.

Est-il possible d'adapter le code pour que lorsque les cellules sont vides j'obtienne un "0"?

Merci
 

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Bonjour gotlapal,

Tout est possible avec des conditions.
Par exemple de ne pas faire le calcul si l'une des cellules concernées est vide!
(Ou d'une valeur erronée)

Dans le code initial que je t'ai donné; le "Int" est inutile.
(Je l'ai tiré d'un code où j'avais des décimales correspondant aux heures et minutes)

J'ai pas mal de boulot pour décortiquer ça!!

Je réitère ma proposition de t'expliquer dans le détail mon dernier exemple.
si tu en comprends déjà un peu le fonctionnement.

Tu verras qu'en final, l'on sera loin de l'usine à gaz des formules Excel
dont tu vas avoir besoin.

A toi de voir.

A te lire.

Amicalement

Yann
 

gotlapal

XLDnaute Junior
Re : Nombre jours de formation

Bonjour,

Encore merci pour ton aide!

Pour ce qui est de ton fichier stages, il est beaucoup trop complexe pour que je l'adapte et je n'aurais pas le temps de le travailler comme il faut.

Peux tu me dire comment empêcher le calcul de se faire lorsque les cases sont vides (pour ta formule initiale)?

Je vais me lancer dans cette voie qui est bien plus simple pour moi..

Merci de ta compréhension

Got
 

YANN-56

XLDnaute Barbatruc
Re : Nombre jours de formation

Bonsoir Got,

Je ne pourrai pas te suivre plus loin car, comme je te l'ai déjà dit
le travail sur une feuille Excel n'est pas ma tasse de thé, et je ne
suis vraiment pas doué dans ce domaine.

Je donne le lien du Classeur "STAGES" au cas où une autre personne saurait
mieux te convaincre que moi.

Cijoint.fr - Service gratuit de dépôt de fichiers

J'en suis vraiment désolé, et te souhaite bonne réussite pour la suite.

Amicalement

Yann
 

Statistiques des forums

Discussions
312 165
Messages
2 085 880
Membres
103 009
dernier inscrit
dede972