Forum

Forum (https://www.ms-office.gr/forum/)
-   Excel samples - Χρήσιμα αρχεία & παραδείγματα (https://www.ms-office.gr/forum/excel-samples-xrisima-arxeia-paradeigmata/)
-   -   Ωράρια εργασίας: Καταχώρηση, επικύρωση και υπολογισμός χρόνου εργασίας (https://www.ms-office.gr/forum/excel-samples-xrisima-arxeia-paradeigmata/4989-oraria-ergasias-kataxorisi-epikirosi-kai-ypologismos-xronoy-ergasias.html)

kapetang 27-08-18 10:37

Ωράρια εργασίας: Καταχώρηση, επικύρωση και υπολογισμός χρόνου εργασίας
 
1 Συνημμένο(α)
Δημιουργός: Γιώργος Καπετανόπουλος (Αύγουστος 2018)

Το θέμα αυτό σχετίζεται άμεσα με το θέμα:

http://www.ms-office.gr/forum/excel-...rgia-mera.html

και με το:

http://www.ms-office.gr/forum/excel-...atigories.html, που αποτελεί την υποδομή και για τα δύο.

Επικεντρώνεται κυρίως στην καταχώρηση και την επικύρωση του χρόνου εργασίας (βάρδιας) σε μορφή: ωω:λλ-ωω:λλ και στον υπολογισμό του συνολικού.

Στο συνημμένο βιβλίο αναλύονται 3 περιπτώσεις:

1) Στο φύλλο Validation παρουσιάζεται η περίπτωση καταχώρησης των ωραρίων στη μορφή ωω:λλ-ωω:λλ και η επικύρωση με το εργαλείο επικύρωσης του Excel.

Δίνονται επίσης τύποι για τον υπολογισμό του συνολικού χρόνου εργασίας.

2) Στο φύλλο Validation2, η καταχώρηση γίνεται στη μορφή ωωλλωωλλ, δηλαδή ως 8ψήφιος αριθμός, αλλά με κατάλληλη μορφοποίηση εμφανίζεται στη μορφή ωω:λλ-ωω:λλ.

Η επικύρωση γίνεται με το εργαλείο επικύρωσης του Excel.

3) Στο φύλλο VBA παρουσιάζεται μια λύση με κώδικα.

Αφορμή για την υλοποίησή της ήταν μια πρόταση (αφορούσε τη μη πληκτρολόγηση κάποιων χαρακτήρων πχ της «:» και τη συμπλήρωσή τους με κώδικα) του Σπύρου (Spirosgr).

Η πληκτρολόγηση γίνεται στη μορφή ωωλλ-ωωλλ και ο κώδικας, αφού ελέγξει την εγκυρότητα, τη μετατρέπει στη μορφή ωω:λλ-ωω:λλ.

Λεπτομέρειες στο συνημμένο

Spirosgr 27-08-18 14:19

1 Συνημμένο(α)
Επειδή χρόνος 24:00 δεν υπάρχει στην Excel, δεν θα πρέπει σε καμία περίπτωση
(ακόμα κι αν «βολεύει» τον χρήστη) να παρουσιάζεται ο χρόνος μεσάνυχτα ως 24:00
σε οποιαδήποτε μορφή (πχ κείμενο)

Αν κάποιος χρήστης, θέλει να δημιουργήσει ένα 100% σωστό έργο,
τότε οι χρόνοι:
Έναρξη και Λήξη (πχ βάρδιας),
θα πρέπει να είναι σε ξεχωριστές στήλες.

Ο χρόνος, έχει βασικές έννοιες, που μπορείτε να δείτε στο πιο κάτω βιβλίο,
καθώς και το γιατί δεν υπάρχει το 24:00 και δεν προτείνεται....

kapetang 27-08-18 17:18

Υπάρχουν κανόνες που πρέπει να ακολουθούμε.

Κατά τη γνώμη μου, ποτέ άκαμπτα.

Άλλωστε υπάρχει και η ρήση "κάθε κανόνας έχει τις εξαιρέσεις του ..."

Spirosgr 27-08-18 19:21

Το «δεν υπάρχει 24:00» δεν είναι κανόνας, για να έχει εξαιρέσεις...
Είναι αξίωμα στην Excel.
Αυτή είναι η γνώμη μου, και αυτό είναι παγκοσμίως παραδεκτό.

Το 24:00, ζει μόνο στο «χαρτί» και μάλιστα καταχρηστικά.
Και η excel, δεν είναι χαρτί...

Ας ακολουθήσουν όσοι μας διαβάζουν, όποιο δρόμο θέλουν...

kapetang 27-08-18 19:33

Παράθεση:

Αρχική Δημοσίευση από Spirosgr (Μήνυμα 28140)
Το «δεν υπάρχει 24:00» δεν είναι κανόνας, για να έχει εξαιρέσεις...
Είναι αξίωμα στην Excel.
Αυτή είναι η γνώμη μου, και αυτό είναι παγκοσμίως παραδεκτό.

Το 24:00, ζει μόνο στο «χαρτί» και μάλιστα καταχρηστικά.
Και η excel, δεν είναι χαρτί...

Ας ακολουθήσουν όσοι μας διαβάζουν, όποιο δρόμο θέλουν...

Το ίδιο το Excel δεν είναι τόσο άκαμπτο.

Αν σε κάποιο κελί βάλουμε τη συνάρτηση: =VALUE("24:00"),δε θα πάρουμε λάθος, αλλά το αποτέλεσμα 1 (μέρα).

Αν κάνουμε δοκιμές με "36:00", "48:00" θα πάρουμε 1,5 (μέρες) και 2 μέρες.

Επίσης αν σε κάποιο κελί γράψουμε: ="24:00" +0 ή ="24:00"*1, θα πάρουμε αποτέλεσμα 1 (μέρα)

Αν γράψουμε: ="48:00"*2, θα πάρουμε 4 μέρες.

Νομίζω όμως ότι και οι δύο διατυπώσαμε τις απόψεις μας και συμφωνώ με την πρότασή σου "Ας ακολουθήσουν όσοι μας διαβάζουν, όποιο δρόμο θέλουν..."

Spirosgr 27-08-18 19:40

Η =value() που δείχνεις, έχει κείμενο σαν όρισμα...
Ως κείμενο, μπορεί να βάλει κάποιος ό,τι θέλει...
Το ερώτημα είναι, αν αυτό είναι σωστό ή λάθος.

ΥΓ.
Πολλές συναρτήσεις (σαν την =value()), δημιουργήθηκαν για να «συμμαζεύουν» λάθη,
και το 24:00 ως ώρα δεν υπάρχει...
Δεν μπορώ να κάνω κάτι άλλο...

kapetang 28-08-18 07:10

Παράθεση:

Αρχική Δημοσίευση από Spirosgr (Μήνυμα 28142)
Η =value() που δείχνεις, έχει κείμενο σαν όρισμα...
Ως κείμενο, μπορεί να βάλει κάποιος ό,τι θέλει...
Το ερώτημα είναι, αν αυτό είναι σωστό ή λάθος.

ΥΓ.
Πολλές συναρτήσεις (σαν την =value()), δημιουργήθηκαν για να «συμμαζεύουν» λάθη,
και το 24:00 ως ώρα δεν υπάρχει...
Δεν μπορώ να κάνω κάτι άλλο...

Καλημέρα

Τελειώνοντας συνοψίζω και τις απόψεις μου.

Η καταχώρηση ενός ωραρίου μπορεί να γίνει:

1) Σε δύο κελιά καταχωρώντας στο ένα την ώρα έναρξης (πχ 12:40) και στο άλλο την ώρα λήξης (πχ 11:30).

2) Καταχωρώντας σε ένα κελί και την ώρα έναρξης και την ώρα λήξης σε μορφή κειμένου ή 8ψήφιου αριθμού.

Η πρώτη περίπτωση γενικά έχει πλεονεκτήματα και θα πρέπει να προτιμάται.

Σε κάποιες περιπτώσεις μπορεί να βολεύει (πχ μηνιαίες καταστάσεις) η καταχώρηση του ωραρίου σε ένα κελί ή μπορεί κάποιο άλλο πρόγραμμα να το έχει αποθηκεύσει σε ένα κελί.

Το κείμενό μου (post #1), είναι φανερό ότι επικεντρώνεται στη 2η περίπτωση και σε κανένα σημείο δεν καταδικάζει ή αποκλείει την 1η.

Το Excel έχει πολλές συναρτήσεις για το χειρισμό κειμένου.

Μία από αυτές είναι και η VALUE η οποία δέχεται ως όρισμα ένα κείμενο το αποτιμά και επιστρέφει έναν αριθμό.

Το κείμενο που δέχεται δεν μπορεί να είναι οποιοδήποτε (με «abc” επιστρέφει λάθος).

Θα πρέπει να μπορεί να αποτιμηθεί ως αριθμός (πχ «123», «24:00»).

Είναι χρήσιμη συνάρτηση και υπάρχει με διάφορα ονόματα στην πλειοψηφία των γλωσσών προγραμματισμού.

Δε συμμερίζομαι συνεπώς την άποψη ότι δημιουργήθηκε για να συμμαζεύει λάθη.

Πράγματι στο Excel δεν υπάρχει η ώρα 24:00 (από την 23:59:59 πάει στην 00:00:00 της επόμενης μέρας), αλλά δεν την έχει «εξορίσει».

Αν καταχωρήσει κάποιος σε κελιά: 24:00, 36:00, 60:00, το Excel θα αποδεχθεί τις καταχωρήσεις και θα τις αποθηκεύσει σωστά ως αριθμούς (1 1,5 2,5), όπως ακριβώς αποθηκεύει τις ημερομηνίες και τις ώρες..


Η ώρα είναι 11:48.

Ms-Office.gr - ©2000 - 2026, Jelsoft Enterprises Ltd.


Search Engine Optimization by vBSEO 3.3.2