GNT sans publicité, site mobile, fonctionnalitées exclusives...

Dates : 1/2 journée, affichage et calcul

Le
J
Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement 01/01/04
en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de l'après-midi, ou 3
jours 1/2
Avec le format jj/mm/aa h: AM/PM , la saisie est très lourde (détail de
l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de l'heure.

Pourrait-on saisir seulement 01/01 A (et encore seulement lorsque des
1/2 journées sont concernées) et obtenir 01/01/04 AM tout en permettant
le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment leurs beaux ongles
vernis en tapant des tonnes de trucs impossibles à exploiter ensuite.

Merci pour votre solidarité
J@@
Lire les 46 réponses

Questions / Réponses high-tech
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 10
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
coyote
Le #323680
J'avais déjà réfléchi sur le sujet mais désolé je n'ai
plus l'exemple sous les yeux.

Toutefois je me rappelle quel structure j'avais adopté

Il suffit d'avoir 4 colonne
1ère Date départ au matin
2ème Date départ à midi

3ème Date retour à midi
4ème Date retour au soir (enfin le lendemain matin)

et faire vos calculs par 1/2 si colonne 2 et 3

Mais ce système impose alors une gestion de prise de
congés par 1/2 journées minimum

Celà vous convient-il ?

Amitiés

Luc
-----Message d'origine-----
Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement
01/01/04

en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de
l'après-midi, ou 3

jours 1/2...
Avec le format jj/mm/aa h: AM/PM , la saisie est très
lourde (détail de

l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de
l'heure.


Pourrait-on saisir seulement 01/01 A (et encore seulement
lorsque des

1/2 journées sont concernées) et obtenir 01/01/04 AM tout
en permettant

le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment
leurs beaux ongles

vernis en tapant des tonnes de trucs impossibles à
exploiter ensuite.


Merci pour votre solidarité
J@@

.



Michel Gaboly
Le #323526
Bonjour J@@, et bonne année

Tu peux utiliser l'événement Change de la feuille concernée :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim c As Range
For Each c In Target
If Not IsError(CDate(Left(c, Len(c) - 2))) Then
Application.EnableEvents = False
c.NumberFormat = "d/m/yy h:mm"
Select Case Right(c, 1)
Case "A"
c = CDate(Left(c, Len(c) - 2))
Case "B"
c = CDate(Left(c, Len(c) - 2)) + 0.5
End Select
Application.EnableEvents = True
End If
Next c
End Sub

Dans cet exemple j'ai utilisé A pour le matin et B pour l'après-midi
(Case "A" et Case "B").

Le principe est le suivant : quand une ou plusieurs cellules sont modi-
fiées, on les examine une par une (Boucle For Each c In Target).

Pour chaque cellule, on teste si la conversion en date après avoir
éliminé les 2 derniers caractères (Espace + "A" ou "B" en l'occurrence)
n'aboutit pas une erreur.

On remplace alors espace + "A" par rien, ce qui correspond à la date à
0 heure et espace + "B" par 0,5, ce qui correedpond à la date à midi.

Les calculs sur les 1/2 journées sonr alors possibles.



Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement 01/01/04
en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de l'après-midi, ou 3
jours 1/2...
Avec le format jj/mm/aa h: AM/PM , la saisie est très lourde (détail de
l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de l'heure.

Pourrait-on saisir seulement 01/01 A (et encore seulement lorsque des
1/2 journées sont concernées) et obtenir 01/01/04 AM tout en permettant
le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment leurs beaux ongles
vernis en tapant des tonnes de trucs impossibles à exploiter ensuite.

Merci pour votre solidarité
J@@


--
Cordialement,

Michel Gaboly
http://www.gaboly.com

J
Le #323465
Bonjour Luc et bonne année
Hélas je ne peux pas avoir 4 colonnes, la structure de la feuille ne
doit pas être modifiée.
je vais voir la proposition de Michel
encore merci
J@@

"coyote" <J'avais déjà réfléchi sur le sujet mais désolé je n'ai
plus l'exemple sous les yeux.

Toutefois je me rappelle quel structure j'avais adopté

Il suffit d'avoir 4 colonne
1ère Date départ au matin
2ème Date départ à midi

3ème Date retour à midi
4ème Date retour au soir (enfin le lendemain matin)

et faire vos calculs par 1/2 si colonne 2 et 3

Mais ce système impose alors une gestion de prise de
congés par 1/2 journées minimum

Celà vous convient-il ?

Amitiés

Luc
-----Message d'origine-----
Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement
01/01/04

en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de
l'après-midi, ou 3

jours 1/2...
Avec le format jj/mm/aa h: AM/PM , la saisie est très
lourde (détail de

l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de
l'heure.


Pourrait-on saisir seulement 01/01 A (et encore seulement
lorsque des

1/2 journées sont concernées) et obtenir 01/01/04 AM tout
en permettant

le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment
leurs beaux ongles

vernis en tapant des tonnes de trucs impossibles à
exploiter ensuite.


Merci pour votre solidarité
J@@

.



J
Le #323462
Bonjour Michel
au saut du lit je vois ta réponse,
a priori cela me convient parfaitement,
j'emmène cela au boulot et je te tiens au courant. (dans une 12aine
d'heures)
Merci et meilleurs voeux
@+
J@@

"Michel Gaboly" <
Tu peux utiliser l'événement Change de la feuille concernée :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim c As Range
For Each c In Target
If Not IsError(CDate(Left(c, Len(c) - 2))) Then
Application.EnableEvents = False
c.NumberFormat = "d/m/yy h:mm"
Select Case Right(c, 1)
Case "A"
c = CDate(Left(c, Len(c) - 2))
Case "B"
c = CDate(Left(c, Len(c) - 2)) + 0.5
End Select
Application.EnableEvents = True
End If
Next c
End Sub

Dans cet exemple j'ai utilisé A pour le matin et B pour l'après-midi
(Case "A" et Case "B").

Le principe est le suivant : quand une ou plusieurs cellules sont
modi-

fiées, on les examine une par une (Boucle For Each c In Target).

Pour chaque cellule, on teste si la conversion en date après avoir
éliminé les 2 derniers caractères (Espace + "A" ou "B" en
l'occurrence)

n'aboutit pas une erreur.

On remplace alors espace + "A" par rien, ce qui correspond à la date à
0 heure et espace + "B" par 0,5, ce qui correedpond à la date à midi.

Les calculs sur les 1/2 journées sonr alors possibles.



Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement 01/01/04
en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de l'après-midi,
ou 3


jours 1/2...
Avec le format jj/mm/aa h: AM/PM , la saisie est très lourde
(détail de


l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de l'heure.

Pourrait-on saisir seulement 01/01 A (et encore seulement lorsque
des


1/2 journées sont concernées) et obtenir 01/01/04 AM tout en
permettant


le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment leurs beaux
ongles


vernis en tapant des tonnes de trucs impossibles à exploiter
ensuite.



Merci pour votre solidarité
J@@


--
Cordialement,

Michel Gaboly
http://www.gaboly.com





sabatier
Le #324055
si on peut dire, michel, car à papeete, au saut du lit, c'est entre 11h et
midi...
jps
PS tu me diras, en auvergne on a coutume de dire : j'ai travaillé toute la
journée et à midi c'était fini...


Michel Gaboly wrote:

Bonsoir,

La journée commence donc bien ;-))


Bonjour Michel
au saut du lit je vois ta réponse,
a priori cela me convient parfaitement,
j'emmène cela au boulot et je te tiens au courant. (dans une 12aine
d'heures)
Merci et meilleurs voeux
@+
J@@

"Michel Gaboly" <
Tu peux utiliser l'événement Change de la feuille concernée :

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim c As Range
For Each c In Target
If Not IsError(CDate(Left(c, Len(c) - 2))) Then
Application.EnableEvents = False
c.NumberFormat = "d/m/yy h:mm"
Select Case Right(c, 1)
Case "A"
c = CDate(Left(c, Len(c) - 2))
Case "B"
c = CDate(Left(c, Len(c) - 2)) + 0.5
End Select
Application.EnableEvents = True
End If
Next c
End Sub

Dans cet exemple j'ai utilisé A pour le matin et B pour l'après-midi
(Case "A" et Case "B").

Le principe est le suivant : quand une ou plusieurs cellules sont
modi-

fiées, on les examine une par une (Boucle For Each c In Target).

Pour chaque cellule, on teste si la conversion en date après avoir
éliminé les 2 derniers caractères (Espace + "A" ou "B" en
l'occurrence)

n'aboutit pas une erreur.

On remplace alors espace + "A" par rien, ce qui correspond à la date à
0 heure et espace + "B" par 0,5, ce qui correedpond à la date à midi.

Les calculs sur les 1/2 journées sonr alors possibles.



Bonjour à tous et bienvenue dans cette nouvelle année

J'ai un problème de calcul de congés:

en A: date du jour de début de l'arrêt, actuellement 01/01/04
en B: date du jour de fin de l'arrêt
ensuite j'ai un calcul C=B-A

Mais l'arrêt peut être seulement de la matinée, ou de l'après-midi,
ou 3


jours 1/2...
Avec le format jj/mm/aa h: AM/PM , la saisie est très lourde
(détail de


l'heure), et l'affichage encombrant.
Or la 1/2 journée n'est pas divisible, donc pas besoin de l'heure.

Pourrait-on saisir seulement 01/01 A (et encore seulement lorsque
des


1/2 journées sont concernées) et obtenir 01/01/04 AM tout en
permettant


le calcul sur cette donnée????

Je veux éviter que les gentilles secrétaires abîment leurs beaux
ongles


vernis en tapant des tonnes de trucs impossibles à exploiter
ensuite.



Merci pour votre solidarité
J@@


--
Cordialement,

Michel Gaboly
http://www.gaboly.com





--
Cordialement,

Michel Gaboly
http://www.gaboly.com





Publicité
Suivre les réponses
Poster une réponse
Anonyme