XL 2019 cellule excel 01/01/1900

JulesetVince31

XLDnaute Nouveau
Supporter XLD
Bjr à la communauté et bonne année, la santé bien sûr.

J'appelle à vos connaissances, j'ai pourtant lu des posts sur forums, j'ai pas trouvé la réponse, novice que je suis.
Voilà ce qui m'amène, le fichier est joint, je souhaiterai, lors de la saisie du chiffre 1 an la cellule B5 et ainsi de suite, que le temps en B4 apparaisse et s'additionne en B33. Évidemment, cela pour toute la feuille sinon c'est pas marrant. Pourtant, j'ai essayé mais lors de la frappe dans une cellule à modifier, j'ai trouvé la date 01/01/1900...bref, j'ai copié la cellule à part, modifié la valeur de la plage, changer le format d'heure... rien n'y fait.

Merci pour vos retours.

Cdlt
Loïc
 

Pièces jointes

  • Formation excel download.xlsx
    24.7 KB · Affichages: 9

Gégé-45550

XLDnaute Accro
Bjr à la communauté et bonne année, la santé bien sûr.

J'appelle à vos connaissances, j'ai pourtant lu des posts sur forums, j'ai pas trouvé la réponse, novice que je suis.
Voilà ce qui m'amène, le fichier est joint, je souhaiterai, lors de la saisie du chiffre 1 an la cellule B5 et ainsi de suite, que le temps en B4 apparaisse et s'additionne en B33. Évidemment, cela pour toute la feuille sinon c'est pas marrant. Pourtant, j'ai essayé mais lors de la frappe dans une cellule à modifier, j'ai trouvé la date 01/01/1900...bref, j'ai copié la cellule à part, modifié la valeur de la plage, changer le format d'heure... rien n'y fait.

Merci pour vos retours.

Cdlt
Loïc
Bonjour,
Alors ! pour une question pas claire, en voilà une belle !
Si je compends bien (pas sûr du tout), vous voulez saisir le nombre 1 dans une cellule de la colonne B et que cela déclenche un calcul dans la ligne précédente de la même colonne ?
1. de quel calcul s'agit-il ("que le temps apparaisse" n'étant pas une réponse compréhensible) ?
2. irréalisable par formule puisqu'une saisie dans la même colonne écraserait ladite formule mais peut-être faisable via macro en cas de saisie séquentielle mais à condition de prévoir ce que doit faire la macro en cas de saisie dans une cellule précédente (donc déjà calculée)
3. en général on ne procède pas de cette manière. On saisit une valeur dans une colonne et on calcule le ou les résultats dans une ou plusieurs autres colonnes.
4. Pour le total en B33, pas de problème.
Merci de préciser mieux votre besoin.
Cordialement,
 

JulesetVince31

XLDnaute Nouveau
Supporter XLD
Bonjour,
Alors ! pour une question pas claire, en voilà une belle !
Si je compends bien (pas sûr du tout), vous voulez saisir le nombre 1 dans une cellule de la colonne B et que cela déclenche un calcul dans la ligne précédente de la même colonne ?
1. de quel calcul s'agit-il ("que le temps apparaisse" n'étant pas une réponse compréhensible) ?
2. irréalisable par formule puisqu'une saisie dans la même colonne écraserait ladite formule mais peut-être faisable via macro en cas de saisie séquentielle mais à condition de prévoir ce que doit faire la macro en cas de saisie dans une cellule précédente (donc déjà calculée)
3. en général on ne procède pas de cette manière. On saisit une valeur dans une colonne et on calcule le ou les résultats dans une ou plusieurs autres colonnes.
4. Pour le total en B33, pas de problème.
Merci de préciser mieux votre besoin.
Cordialement,

Bjr,
Je voudrai saisir la valeur 1 dans la cellule B5 qu'apparaisse 1:00:00 et ainsi de suite pour les autres valeurs des colonnes. Espérant avoir été plus clair et moins littéraire aussi. Merci par avance
 

JulesetVince31

XLDnaute Nouveau
Supporter XLD
re
encore faudrait-il qu'on arrive à bien comprendre ce que vous voulez.
Si c'est juste une question de format, mettez toutes les cellules de B2 à B33 au même format que B2 et l'affichage sera identique partout.
Si c'est un calcul que vous voulez, je crains que la logique soit à revoir.
Cdlt.

re,
Question logique, je suis d'accord. On peut mieux faire.
Donc, j'ai mis la colonne B en format standard. J'obtiens cela 0,0416666666666667
à la place je voudrais avoir la valeur 1:00:00 inscrit dans les cellules b5 et les suivantes , lignes léon, marc et aurélie pour qu'il apparaisse 1:00:00 lorsque je tape le chiffre 1, merci
 

Pièces jointes

  • exercice.xlsx
    16.2 KB · Affichages: 4

Gégé-45550

XLDnaute Accro
re,
Question logique, je suis d'accord. On peut mieux faire.
Donc, j'ai mis la colonne B en format standard. J'obtiens cela 0,0416666666666667
à la place je voudrais avoir la valeur 1:00:00 inscrit dans les cellules b5 et les suivantes , lignes léon, marc et aurélie pour qu'il apparaisse 1:00:00 lorsque je tape le chiffre 1, merci
Click sur cellule 'léon' en B5 puis [Menu][Accueil] => 'Reproduire la mise en forme' et sélectionner à la souris B6 à B32.
Ou : sélectionner B6 à B32 puis [Menu][Accueil] => 'Format' et choisir 'Heure'.
Cdlt
 

job75

XLDnaute Barbatruc
je voudrais avoir la valeur 1:00:00 inscrit dans les cellules b5 et les suivantes , lignes léon, marc et aurélie pour qu'il apparaisse 1:00:00 lorsque je tape le chiffre 1
Voyez cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, [B5:AJ32])
If Target Is Nothing Then Exit Sub
Application.EnableEvents = False 'désactive les évènements
For Each Target In Target 'en cas d'entrées ou effacements multiples
    If IsNumeric(CStr(Target)) Then If Target = Int(Target) Then Target = Target / 24
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Elle se déclenche automatiquement quand on modifie ou valide une cellule de la plage B5:AJ32.
 

Pièces jointes

  • exercice.xlsm
    22.5 KB · Affichages: 2

JulesetVince31

XLDnaute Nouveau
Supporter XLD
Voyez cette macro dans le code de la feuille (clic droit sur l'onglet et Visualiser le code) :
VB:
Private Sub Worksheet_Change(ByVal Target As Range)
Set Target = Intersect(Target, [B5:AJ32])
If Target Is Nothing Then Exit Sub
Application.EnableEvents = False 'désactive les évènements
For Each Target In Target 'en cas d'entrées ou effacements multiples
    If IsNumeric(CStr(Target)) Then If Target = Int(Target) Then Target = Target / 24
Next
Application.EnableEvents = True 'réactive les évènements
End Sub
Elle se déclenche automatiquement quand on modifie ou valide une cellule de la plage B5:AJ32.
Bsr,
Déjà merci, en revanche 2 choses:
- il s'inscrit 24:00:00 quand je saisis 1 dans la cellule, comment faire pour qu'il s'inscrive la valeur située en B4 1:00:00 ? et rendre valable pour l'ensemble des colonnes suivantes avec des valeurs différentes ex:0:30:00 etc
- Ensuite, l'addition des heures en B33 ne s'effectue pas, je suis à 0:00:00. Si c'est pas trop vous demander? ça me sort d'une sacrée épine.
 

job75

XLDnaute Barbatruc
Maintenant si vous voulez prendre les valeurs en B4, C4, D4 etc... utilisez :
VB:
For Each Target In Target 'en cas d'entrées ou effacements multiples
    If IsNumeric(CStr(Target)) Then If Target = Int(Target) Then Target = Target * Cells(4, Target.Column)
Next
C'est vous qui avez mis les formules en ligne 33, si elles ne conviennent pas modifiez-les.
 

Pièces jointes

  • exercice(1).xlsm
    22.6 KB · Affichages: 1

Modeste geedee

XLDnaute Barbatruc
Bjr à la communauté et bonne année, la santé bien sûr.

J'appelle à vos connaissances, j'ai pourtant lu des posts sur forums, j'ai pas trouvé la réponse, novice que je suis.
Voilà ce qui m'amène, le fichier est joint, je souhaiterai, lors de la saisie du chiffre 1 an la cellule B5 et ainsi de suite, que le temps en B4 apparaisse et s'additionne en B33.0
Bonsour,
Au lieu de saisir 1
Saisir 1:

"ByDesign" Excel reconnaît automatiquement la saisie du séparateur horaire ":" pour une durée
 

Statistiques des forums

Discussions
312 206
Messages
2 086 222
Membres
103 159
dernier inscrit
FBallea