Αυτήν τη στιγμή είστε εκτός σύνδεσης, σε αναμονή για επανασύνδεση στο Internet

PRB: Στρογγυλές λειτουργούν διαφορετικά σε VBA 6 και υπολογιστικών φύλλων του Excel

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:194983
Αυτό το αρχείο έχει αρχειοθετηθεί. Προσφέρεται “ως έχει” και δεν θα ενημερώνεται πια.
Συμπτώματα
Όταν χρησιμοποιείτε τη λειτουργία Round() στο πρόγραμμα Visual Basic 6.0, ένα διαφορετικό αποτέλεσμα ενδέχεται να επιστραφούν από όταν χρησιμοποιήσετε σε έναν τύπο του κελιού από ένα υπολογιστικό φύλλο του Excel.
Αιτία
Η συνάρτηση VBA Round() χρησιμοποιεί στρογγυλοποίηση του Banker ενώ η συνάρτηση υπολογιστικού φύλλου κελί χρησιμοποιεί αριθμητική στρογγυλοποίηση.
Προτεινόμενη αντιμετώπιση
Γράψτε μια προσαρμοσμένη συνάρτηση για να λάβετε τα αποτελέσματα που θέλετε.
Κατάσταση
Αυτή η συμπεριφορά οφείλεται στη σχεδίαση.
Περισσότερες πληροφορίες
Η συνάρτηση Round() σε ένα υπολογιστικό φύλλο του Excel χρησιμοποιεί αριθμητική στρογγυλοποίηση, όπου πάντα στρογγυλοποιεί 0,5 (μακριά από το 0). Η συνάρτηση Round() στη Visual Basic for Applications 6, χρησιμοποιεί στρογγυλοποίηση του Banker, που στρογγυλοποιεί.5 πάνω ή κάτω, όποιο από τα δύο θα έχει ως αποτέλεσμα έναν άρτιο αριθμό.

Βήματα για την αναπαραγωγή της συμπεριφοράς

  1. Στο Excel, ανοίξτε ένα νέο υπολογιστικό φύλλο και πληκτρολογήστε τον παρακάτω τύπο σε ένα κελί:
           =Round(2.5, 0)						
  2. Το αποτέλεσμα είναι 3.
  3. Στο πρόγραμμα Visual Basic 6.0 ή άλλες εφαρμογές που χρησιμοποιούν VBA 6, ανοίξτε ένα νέο έργο και πληκτρολογήστε την παρακάτω παράσταση στο παράθυρο εντοπισμός σφαλμάτων ή άμεσης παρακολούθησης:
          ? Round(2.5, 0)						
  4. Το αποτέλεσμα είναι 2.
Αναφορές
Για πρόσθετες πληροφορίες σχετικά με τη στρογγυλοποίηση, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής Βάσης της Microsoft:
196652ΔΙΑΔΙΚΑΣΙΕΣ: Εφαρμογή προσαρμοσμένης στρογγυλοποίησης διαδικασιών


Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 194983 - Τελευταία αναθεώρηση: 12/05/2015 09:34:04 - Αναθεώρηση: 2.0

Microsoft Visual Basic 6.0 Professional Edition, Microsoft Excel 97 Standard Edition

  • kbnosurvey kbarchive kbprb kbmt KB194983 KbMtel
Σχόλια