Forum

Forum (https://www.ms-office.gr/forum/)
-   Access - Ερωτήσεις / Απαντήσεις (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/)
-   -   [ Συναρτήσεις ] RoundUp (https://www.ms-office.gr/forum/access-erotiseis-apantiseis/493-roundup.html)

mdragon 11-03-10 23:29

RoundUp
 
Μπορεί να μου πει κάποιος αν υπάρχει στην Access αντίστοιχη συνάρτηση του RoundUp με 2 δεκαδικά ψηφία?

Ευχαριστώ

amy 12-03-10 01:14

VBA
Round(expression [,numdecimalplaces])
Round(yourexpression,2)
ACCESS
Round([field];2) και στα ελληνικά ---> Στρογγυλοποιημένη

mdragon 12-03-10 07:21

Ανδρέα,
Αυτό το γνωρίζω, θέλω όμως όταν έχω 2,31 να το στρογγυλοποιεί σε 2,35
Αυτό γίνεται με την roundUp στο Excel ενώ αντίθετα η round μας δίνει 2,30


Καλημέρα
Μάρω

Chris 12-03-10 09:19

Μαρω μου καλημερα :icon_hihi:
Μαλλον νομιζω πως κανεις λαθος με την ROUNDUP στο Excel δεν κανει με τιποτα το 2,31 στρογγυλοποιηση σε 2,35. Το 2,3469 με στρογγυλοποιηση σε 2 δεκαδικα θα το κανει 2,35.

Τωρα οσον αφορα την ερωτηση σου αν υπαρχει στην ACCESS θα το αφησω στους πιο ειδικους να σου απαντησουν..

mdragon 12-03-10 10:33

Οκ Χρήστο, δικό μου λάθος στην διατύπωση :plaf:
έχω το αποτέλεσμα ενός τύπου 640,325 και θέλω να μου δώσει το αποτέλεσμα 640,33
δεν ξέρω όμως γιατί με την Στρογγυλοποίηση μου δίνει 640,32
Έχεις καμιά ιδέα?


Μάρω

Tasos 12-03-10 13:13

Γεια σας!

Στα προϊόντα της Microsoft υπάρχουν αρκετές μέθοδοι στρογγυλοποίησης μια τιμής.

Αυτές οι μέθοδοι, μοιάζουν μεταξύ τους αλλά καμία δεν κάνει ακριβώς τη δουλειά της RounUp() της Excel (που είναι το ζητούμενο του θέματος)

Τι κάνουμε λοιπόν; Υπολογίζουμε στην Access με τη βοήθεια της Excel.

Πως;

  • Πατάμε ALT+F11 για να εμφανίσουμε τον VBE.
  • Εισάγουμε μια νέα λειτουργική μονάδα (Menu: Insert > Module) ή χρησιμοποιούμε τυχόν υπάρχουσα.
  • Προσθέτουμε (τσεκάρουμε) την αναφορά: Microsoft Excel XX.0 Object Library (Menu: Tools>References)
    όπου XX.0 = η έκδοση Excel που υπάρχει στον υπολογιστή.

Στο παράθυρο της λειτουργικής μονάδας περνάμε το παρακάτω:
Κώδικας:

Function XLRoundUp(Number#, Optional Num_Digits% = 0) As Double
    XLRoundUp = Excel.WorksheetFunction.RoundUp(Number, Num_Digits)
End Function

και αποθηκεύουμε.

Στο πεδίο της φόρμας ή του ερωτήματος που θα εμφανίζεται το αποτέλεσμα
περνούμε τον τύπο:

=XLRoundUp([MyNunber];Num_Digits) που συμπεριφέρεται όπως η Excel (είναι Excel:dft012:)

όπου:
  • [MyNunber] = το πεδίο που περιέχει τον αριθμό που θα στρογγυλοποιηθεί προς τα πάνω
  • Num_Digits = ο αριθμός των ψηφίων, στα οποία θα στρογγυλοποιηθεί ο αριθμός

Έτσι, για τον αριθμό 640,325 ο τύπος: =XLRoundUp([MyNunber];2) θα μας επιστρέψει 640,33.

Φιλικά

Τάσος

Meteora 12-03-10 14:19

Καλημέρα στη παρέα καί όχι μόνο !

...Αν το ζήτημα ειναι να "σπρώξουμε" προς τα άνω την στρογγυλοποίηση αριθμών με χιλιοστό το 5 , μήπως μπορεί να γίνει ως εξής ;
  • Για αριθμούς με τρία δεκαδικά : =Round( τιμή πεδίου + 0,001 , 2)
Παιδιά, μια σκέψη καταθέτω ...

Υ.Σ. Έχω την αίσθηση (πιθανόν) οτι με την παραπάνω προτεινόμενη διαχείριση φτιάχνουμε - επι της ουσίας - μια RoundUp της αρεσκείας μας. Για αίσθηση μιλάω και όχι για βεβαιότητα...

Φιλικά / Νίκος Δ.

mdragon 12-03-10 14:50

  • Προσθέτουμε (τσεκάρουμε) την αναφορά: Microsoft Excel XX.0 Object Library (Menu: Tools>References)
    όπου XX.0 = η έκδοση Excel που υπάρχει στον υπολογιστή.


Δεν το κατάλαβα η ξανθιά!!!! Πως το κάνουμε αυτό?

mdragon 12-03-10 15:05

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


Φιλικά
Μάρω

Meteora 12-03-10 15:06

1 Συνημμένο(α)
Μάρω δες επισυναπτόμενο !

Φιλικά / Νίκος Δ.


Η ώρα είναι 19:46.

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


Search Engine Optimization by vBSEO 3.3.2