[Excel] Calculs automatiques sur Excel | GPAO
Résolu/Fermé
Hellowa
Messages postés
11
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
28 avril 2009
-
21 avril 2009 à 09:43
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 22 avril 2009 à 13:50
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 22 avril 2009 à 13:50
A voir également:
- Gpao gratuit en excel
- Wetransfer gratuit sans inscription - Guide
- Liste déroulante excel - Guide
- Word excel gratuit - Guide
- Chatgpt gratuit - Télécharger - Outils Internet
- Windows 10 gratuit - Guide
7 réponses
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
642
21 avril 2009 à 19:18
21 avril 2009 à 19:18
Bonjour Hellowa,
J'ai pris ton dernier fichier et j'ai réalisé une macro en VBA qui semble fonctionner.
Ce n’était quand même pas si simple que ça. Tu verras j'ai créé une feuille dans laquelle on peut paramétrer la liste des salariés, cela m'a semblé plus souple.
Regardes ce que tu en penses.
http://www.cijoint.fr/cjlink.php?file=cj200904/cijUi3n9gD.xls
A+
J'ai pris ton dernier fichier et j'ai réalisé une macro en VBA qui semble fonctionner.
Ce n’était quand même pas si simple que ça. Tu verras j'ai créé une feuille dans laquelle on peut paramétrer la liste des salariés, cela m'a semblé plus souple.
Regardes ce que tu en penses.
http://www.cijoint.fr/cjlink.php?file=cj200904/cijUi3n9gD.xls
A+
Hellowa
Messages postés
11
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
28 avril 2009
21 avril 2009 à 10:34
21 avril 2009 à 10:34
J'ai fait une version bateau du fichier afin que vous compreniez mieux ma requête.
Elle est disponible a cette adresse:http://www.cijoint.fr/cjlink.php?file=cj200904/cijOuwSpX9.xls
Cordialement,
Eloi
Elle est disponible a cette adresse:http://www.cijoint.fr/cjlink.php?file=cj200904/cijOuwSpX9.xls
Cordialement,
Eloi
Hellowa
Messages postés
11
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
28 avril 2009
21 avril 2009 à 14:24
21 avril 2009 à 14:24
J'ai continué mes recherches, mais je bloque dans la réalisation de la macro...
Voici un fichier d'exemple que j'ai créé cette après midi.
http://www.cijoint.fr/cjlink.php?file=cj200904/cijulfK73W.xls
Merci d'avance!
Eloi
Voici un fichier d'exemple que j'ai créé cette après midi.
http://www.cijoint.fr/cjlink.php?file=cj200904/cijulfK73W.xls
Merci d'avance!
Eloi
Je crois me souvenir qu'il y a une fonction "sommesi" qui fait le total d'une cellule en fonction d'un critere.
Je ne peux pas tester car je n'ai pas excel sous la main maintenant mais en mettant que la plage à tester est le tableau complet du planning des equipes à droite ; alors je pense qu'en entrant comme conditon "=numero de l'affaire", alors tu devrais avoir le nombre de jour alloué à la dite affaire.
Je ne peux pas tester car je n'ai pas excel sous la main maintenant mais en mettant que la plage à tester est le tableau complet du planning des equipes à droite ; alors je pense qu'en entrant comme conditon "=numero de l'affaire", alors tu devrais avoir le nombre de jour alloué à la dite affaire.
Hellowa
Messages postés
11
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
28 avril 2009
22 avril 2009 à 08:11
22 avril 2009 à 08:11
Woaw, c'est fantastique, merci! Je suis impressionné!!!
J'était tellement démoralisé de ne pas arriver à faire de macro que je l'ai fait en ligne de calcul directement dans Excel! Mais ta solution est 100 fois meilleure.
http://www.cijoint.fr/cjlink.php?file=cj200904/cij6pXL9dj.xls
Voilà le fichier que j'avais fait.
Maintenant je souhaiterai trouver un système qui permet, chaque semaine, de décaler les semaines. C'est a dire, je m'explique:
J'aimerai que le lundi par exemple, on lance la macro, et les données de la semaine précédente sont éffacées, quand a celles de la semaine en cours sont décalées.
Cepandant, les temps de potentiel de travail doivent être conservée...
Ce n'est pas très clair, mais il est 8heures du mat et j'ai la tete dedans.
Je cherche une solution et lorsque je serai à bout, je viendrais soliciter votre aide =)!
En fait, l'idéal, je dis bien l'idéal, serait de trouver comment faire pour que , quel que soit le jour de la semaine ou l'on execute la macro, elle mette a jour les dates et les semaines.
J'ai trouvé cette formule, mais je ne la comprend pas...
=ENT((D-SOMME(MOD(DATE(ANNEE(D-MOD(D-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)
Elle permet de trouver le numéro ISO de la semaine en fonction de la date!
Si quelqu'un peut m'éclairer, d'avance merci!
Bonne journée,
Eloi
J'était tellement démoralisé de ne pas arriver à faire de macro que je l'ai fait en ligne de calcul directement dans Excel! Mais ta solution est 100 fois meilleure.
http://www.cijoint.fr/cjlink.php?file=cj200904/cij6pXL9dj.xls
Voilà le fichier que j'avais fait.
Maintenant je souhaiterai trouver un système qui permet, chaque semaine, de décaler les semaines. C'est a dire, je m'explique:
J'aimerai que le lundi par exemple, on lance la macro, et les données de la semaine précédente sont éffacées, quand a celles de la semaine en cours sont décalées.
Cepandant, les temps de potentiel de travail doivent être conservée...
Ce n'est pas très clair, mais il est 8heures du mat et j'ai la tete dedans.
Je cherche une solution et lorsque je serai à bout, je viendrais soliciter votre aide =)!
En fait, l'idéal, je dis bien l'idéal, serait de trouver comment faire pour que , quel que soit le jour de la semaine ou l'on execute la macro, elle mette a jour les dates et les semaines.
J'ai trouvé cette formule, mais je ne la comprend pas...
=ENT((D-SOMME(MOD(DATE(ANNEE(D-MOD(D-2;7)+3);1;2);{1E+99;7})*{1;-1})+5)/7)
Elle permet de trouver le numéro ISO de la semaine en fonction de la date!
Si quelqu'un peut m'éclairer, d'avance merci!
Bonne journée,
Eloi
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
642
22 avril 2009 à 10:37
22 avril 2009 à 10:37
Bonjour,
Il exsite une fonction VBA qui calcule le numéro de semaine :
NumeroSemaine = DatePart("ww", TaDate)
Mais elle ne donne pas toujours le même résultat que ta formule car il y a l'eternel problème de la position du 1° janvier... bref dans certain cas ta formule donne semaine 53 alors que la fonction VBA donne semaine 1.
Je pense que c'est ta formule qui est compliquée mais juste.
Au fait, pour qu'elle marche, il suffit de nommer le champ date en "D" ou remplacer les "D" dans la formule par la référence à la cellule (C32 dans ton exemple).
Tu peux essayer d'adapter ma macro pour faire ce que tu souhaites.
Si tu as des problèmes, dis le nous.
A+
Il exsite une fonction VBA qui calcule le numéro de semaine :
NumeroSemaine = DatePart("ww", TaDate)
Mais elle ne donne pas toujours le même résultat que ta formule car il y a l'eternel problème de la position du 1° janvier... bref dans certain cas ta formule donne semaine 53 alors que la fonction VBA donne semaine 1.
Je pense que c'est ta formule qui est compliquée mais juste.
Au fait, pour qu'elle marche, il suffit de nommer le champ date en "D" ou remplacer les "D" dans la formule par la référence à la cellule (C32 dans ton exemple).
Tu peux essayer d'adapter ma macro pour faire ce que tu souhaites.
Si tu as des problèmes, dis le nous.
A+
Hellowa
Messages postés
11
Date d'inscription
mardi 21 avril 2009
Statut
Membre
Dernière intervention
28 avril 2009
22 avril 2009 à 10:57
22 avril 2009 à 10:57
Après réfléxion, je me suis rendu compte qu'il fallait mieux faire 2 macro
Une pour le calcul direct, l'autre pour le "décalage" hebdomadaire.
Voilà ce que j'ai trouvé, reste plus qu'à trouver comment faire avancer le chmilblik.
Si quelqu'un sait comment décaler une portion de tableau, j'aimerai un peu d'aide... Mais je continue et chercher et si je trouve je vous montrerai le résultat!
En attendant, voilà ce que j'ai fait!
Informatiquement,
Eloi
Une pour le calcul direct, l'autre pour le "décalage" hebdomadaire.
Voilà ce que j'ai trouvé, reste plus qu'à trouver comment faire avancer le chmilblik.
Si quelqu'un sait comment décaler une portion de tableau, j'aimerai un peu d'aide... Mais je continue et chercher et si je trouve je vous montrerai le résultat!
En attendant, voilà ce que j'ai fait!
Function WeekNumber(Optional ByVal vDate As Variant) As Byte If IsMissing(vDate) Then vDate = Date WeekNumber = DatePart("ww", vDate, vbMonday, vbFirstFourDays) End Function Sub Decalage_semaine() Dim SEM As Integer, ICOL As Integer 'On calcule tout d'abbord la semaine en cours SEM = WeekNumber(Now) 'Puis on l'ajoute sur les 2 tableaux For ICOL = 4 To 6 Cells(1, ICOL) = "" Next ICOL For ICOL = 4 To 6 Cells(1, ICOL) = "Semaine" & SEM SEM = SEM + 1 Next ICOL End Sub
Informatiquement,
Eloi
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
642
22 avril 2009 à 12:03
22 avril 2009 à 12:03
Bonjour,
Juste une info. Il existe une fonction en VBA pour calculer le N° de semaine :
NumeroSemaine = DatePart("ww", TaDate)
Mais ta fonction donne un résultat plus correct. En effet, il y a toujours un problème pour avec le 1° janvier qui est selon les années en semaine 53 et non pas en semaine 1.
(Je ne sais pas si c'est ta question mais ta formule fonctionne si tu nomme "D" ta cellule date ou si tu remplace "D" par C32 dans ton exemple)
A+
Juste une info. Il existe une fonction en VBA pour calculer le N° de semaine :
NumeroSemaine = DatePart("ww", TaDate)
Mais ta fonction donne un résultat plus correct. En effet, il y a toujours un problème pour avec le 1° janvier qui est selon les années en semaine 53 et non pas en semaine 1.
(Je ne sais pas si c'est ta question mais ta formule fonctionne si tu nomme "D" ta cellule date ou si tu remplace "D" par C32 dans ton exemple)
A+
pilas31
Messages postés
1825
Date d'inscription
vendredi 5 septembre 2008
Statut
Contributeur
Dernière intervention
24 avril 2020
642
22 avril 2009 à 13:50
22 avril 2009 à 13:50
Ce message est sans intérêt, je l'ai posté en double ...