PetranEVO Δημοσιεύτηκε Μάϊος 20, 2016 #1 Κοινοποίηση Δημοσιεύτηκε Μάϊος 20, 2016 (edited) Παιδιά όπως το λέει ο τίτλος έχω ένα αρχείο εργαστηρίου με πάνω από 5000 εγγραφές. Στα κελιά όμως δεν είναι απλά ως 5 λεπτά κτλ. και κάθε κελί χωριστό ,είναι όλα μαζί αυτόματα μέσω προγράμματος. Οπότε το κάθε κελί είναι έτσι 2'22''.5 (στα κελιά τονίζω ότι είναι και τα δείχνει όπως σας τα δείχνω αριστερά) ,θέλω να βάλω δίπλα κελί του να υπολογίζει ,και να βγάζει αποτέλεσμα μόνο τα δευτερόλεπτα Δηλαδή παράδειγμα 2'15''.3 ---> 135''.3 Δηλαδή να δείχνει μόνο τα δευτ. και τα milisecond. Γίνεται; Έγινε επεξεργασία Μάϊος 20, 2016 από PetranEVO Link to comment Share on other sites More sharing options...
Delijohn Μάϊος 20, 2016 #2 Κοινοποίηση Μάϊος 20, 2016 (edited) Κάτι σε =HOUR(κελί με ώρα) * 3600 + MINUTE(κελί με ώρα) * 60 + SECOND(κελί με ώρα) και το κάνεις φορμάτ σαν number και μετά τα milliseconds, μπορείς να τα πάρεις με κάτι σαν =RIGHT(A2, νούμερα από το τέλος που θες να "τσιμπάει") μετά τα ενώνεις σαν string, αφού βάλεις ανάμεσα και τα ανάλογα --> ". Έγινε επεξεργασία Μάϊος 20, 2016 από Delijohn 1 Link to comment Share on other sites More sharing options...
deninho Μάϊος 20, 2016 #3 Κοινοποίηση Μάϊος 20, 2016 (edited) λέει ότι στο κελί εμφανίζεται ως 2'22",5 οπότε θα πρέπει να το δουλέψει όλο με το right το left και το Mid: =LEFT(D6; 1)*60+MID($D$6;3;2)+RIGHT(D6;2) (για την τιμή στο D6) ή, επειδή είδα ότι οι τιμές σου είναι .5 και, τουλάχιστον σε εμένα δεν το παίρνει σωστά, γράψε το έτσι: =LEFT(D6; 1)*60+MID($D$6;3;2)+RIGHT(D6;1)/10 Έγινε επεξεργασία Μάϊος 20, 2016 από deninho Link to comment Share on other sites More sharing options...
Delijohn Μάϊος 20, 2016 #4 Κοινοποίηση Μάϊος 20, 2016 Νομίζω πως δεν έχει να κάνει με το πώς φαίνεται, αλλά με το τι φορμάτ έχει το κελί. Αν το έχει σαν ώρα, θα παίξει το δικο μου. Αν το έχει σαν text και δεν μπορεί να παίξει με τα νούμερα, πρέπει να κάνει κοπτοραπτική με όλα τα νουμεράκια.. και να τα κάνει νούμερα πριν κάνει τις πράξεις. Link to comment Share on other sites More sharing options...
dpolal Μάϊος 20, 2016 #5 Κοινοποίηση Μάϊος 20, 2016 (edited) ....................... Έγινε επεξεργασία Μάϊος 20, 2016 από dpolal Link to comment Share on other sites More sharing options...
dpolal Μάϊος 20, 2016 #6 Κοινοποίηση Μάϊος 20, 2016 (edited) πριν 31 λεπτά, το μέλος dpolal έγραψε: Συμφωνώ με τον @deninho Aν τώρα το κελί Α1 είναι της μορφής π.χ. 2'15".3 τότε χρειάζεται το παρακάτω πεδίο που κάνει όλη τη δουλειά. =((LEFT(A1;FIND("'";A1;1)-1))*60)+(MID(A1;FIND("'";A1;1)+1;FIND(".";A1;1)-FIND("'";A1;1)-2))&"""."&RIGHT(A1;LEN(A1)-FIND(".";A1;1)) ΠΡΟΣΟΧΗ όμως ότι το Α1 πρέπει να είναι οπωσδήποτε της μορφής ΛΛ'ΔΔ".δδ με τα Λ,Δ,δ όσα θέλει ακόμα και 0 αλλά όχι κενά !!! Δηλαδή το 2'0".10 ή το 0'0".10 θα τα μετατρέψει κανονικά. Έγινε επεξεργασία Μάϊος 20, 2016 από dpolal Link to comment Share on other sites More sharing options...
deninho Μάϊος 21, 2016 #7 Κοινοποίηση Μάϊος 21, 2016 μπορείς να εξηγήσεις λίγο τι κάνεις με τα find? Link to comment Share on other sites More sharing options...
dpolal Μάϊος 21, 2016 #8 Κοινοποίηση Μάϊος 21, 2016 Βρίσκω τη τιμή της θέσης ενώς συμβόλου μέσα στο string (εδώ π.χ. είναι τα ' και ") και πέρνω ότι είναι πριν, στην μέση και μετά από αυτά. Π.Χ. Α1: 11'05".30 η συνάρτηση FIND("'";A1;1) δίνει τιμή 3 άρα η συνάρτηση LEFT(A1;FIND("'";A1;1)-1) γίνεται LEFT(A1;3-1) οπότε θα μου φέρει μόνο τα 2 πρώτα γράμματα του string (το 11). Αν ήξερα ότι ΟΛΑ τα πεδία του πίνακα έχουν πάντα ΔΙΨΗΦΙΟ αριθμό για τα λεπτά θα έλεγα απλώς LEFT(A1;2). Με το FIND όμως πέρνω ότι είναι πριν το ' και δεν με νοιάζει πόσα ψηφία είναι. Ομοίως και παρακάτω με το MID ή το RIGHT . 1 Link to comment Share on other sites More sharing options...
PetranEVO Μάϊος 21, 2016 Author #9 Κοινοποίηση Μάϊος 21, 2016 ευχαριστώ για τις απαντήσεις σας δεν περίμενα να είναι τόσο περίπλοκο. Δευτέρα θα πάω δουλειά οπότε δεν το έχω το αρχείο μπροστά μου ,πάντως σε δικό μου test με τυχαία νούμερα δεν λειτουργεί. Link to comment Share on other sites More sharing options...
dpolal Μάϊος 22, 2016 #10 Κοινοποίηση Μάϊος 22, 2016 (edited) Ή δεν έκανες σωστά το copy/paste και μπήκαν τίποτα κενά ή ποιά απόστροφο χρησιμοποίησες ; Αυτή που είναι αριστερά κάτω από το πλήκτρο Esc ή αυτή που είναι δίπλα στο Enter ; Στη φόρμουλα που σου έδωσα έβαλα την δεύτερη ' (ακριβώς αριστερά από το Enter), αν εσένα το αρχείο έχει την άλλη θα πρέπει να κάνεις τις αντίστοιχες αλλαγές. Πάρε πάλι την φόρμουλα από εδώ (χωρίς κενά !!!) =((LEFT(A1;FIND("'";A1;1)-1))*60)+(MID(A1;FIND("'";A1;1)+1;FIND(".";A1;1)-FIND("'";A1;1)-2))&"""."&RIGHT(A1;LEN(A1)-FIND(".";A1;1)) Σε μένα λειτουργεί κανονικά. Έγινε επεξεργασία Μάϊος 22, 2016 από dpolal Link to comment Share on other sites More sharing options...
PetranEVO Μάϊος 23, 2016 Author #11 Κοινοποίηση Μάϊος 23, 2016 On 5/22/2016 at 2:59 AM, dpolal said: Ή δεν έκανες σωστά το copy/paste και μπήκαν τίποτα κενά ή ποιά απόστροφο χρησιμοποίησες ; Αυτή που είναι αριστερά κάτω από το πλήκτρο Esc ή αυτή που είναι δίπλα στο Enter ; Στη φόρμουλα που σου έδωσα έβαλα την δεύτερη ' (ακριβώς αριστερά από το Enter), αν εσένα το αρχείο έχει την άλλη θα πρέπει να κάνεις τις αντίστοιχες αλλαγές. Πάρε πάλι την φόρμουλα από εδώ (χωρίς κενά !!!) =((LEFT(A1;FIND("'";A1;1)-1))*60)+(MID(A1;FIND("'";A1;1)+1;FIND(".";A1;1)-FIND("'";A1;1)-2))&"""."&RIGHT(A1;LEN(A1)-FIND(".";A1;1)) Σε μένα λειτουργεί κανονικά. Καλημέρα,σε ευχαριστώ. Σήμερα πήγα στην δουλειά και το πήρα το αρχείο μαζί μου. Έχει διάφορα τελικά, αλλά και πάλι δεν παίζει να βγεί εύκολα άκρη. Έχει μερικά στοιχεία, τα οποία θα θέλουν αλλαγή ,και δεν ξέρω αν γίνεται κιόλας. Δηλαδή όπως στα γράψω. 2'12.3 2'45 (εδώ δεν έχει κάν μηδενικό με τελεία,ώστε να βάλουμε milisecond). Οπότε θες να ανεβάσω την formula να τελειώνω να μην σε πρίζω κιόλας; Link to comment Share on other sites More sharing options...
deninho Μάϊος 23, 2016 #12 Κοινοποίηση Μάϊος 23, 2016 άμα στα βγάζει έτσι mm'ss πάλι εύκολο είναι απλό: Ο,τι βρίσκει αριστερά από το ' θα το κάνεις επί 60 και μετά θα προσθέτεις ότι είναι μετά το ' Link to comment Share on other sites More sharing options...
dpolal Μάϊος 23, 2016 #13 Κοινοποίηση Μάϊος 23, 2016 Η τελική συνάρτηση είναι αυτή =IF(ISBLANK(P2);"";((LEFT(P2;FIND("’";P2;1)-1))*60)+IF(LEN(P2)<5;RIGHT(P2;2);(MID(P2;FIND("’";P2;1)+1;FIND(".";P2;1)-FIND("’";P2;1)-1)))&"""."&IF(LEN(P2)<5;"0";RIGHT(P2;LEN(P2)-FIND(".";P2;1)))) Δοκιμασμένο και λειτουργεί. Στο αρχείο σου υπάρχουν μερικές γραμμές όπου η απόστροφος είναι λάθος (π.χ. Ρ14) έχει και μερικά παρακάτω όπως είδα. Εκεί το μόνο που θα κάνεις είναι να αλλάξεις την απόστροφο στο κελί Ρ14 (copy/paste την απόστροφο από το πάνω κελί) και αυτόματα θα σου εμφανιστεί δίπλα το σωστό αποτέλεσμα. Σου έστειλα λινκ με το αρχείο σου. Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now