Κλάσματα στο excel

Γράψατε ένα κλάσμα σε ένα κελί και το excel το μετέτρεψε σε ημερομηνία ή  το στοίχισε αριστερά και το θεώρησε αλφαριθμητικό. Στο κόσμο του excel τα κλάσματα έχουν τους δικούς τους κανόνες.  Για να γράψετε ένα κλάσμα, πληκτρολογείστε: 0 (μηδέν), κενό (space bar), αριθμητής, γραμμή κλάσματος (/), παρονομαστής.  Για μικτά κλάσματα (κλάσματα με ακέραιο μέρος) , πληκτρολογείστε: ακέραιο μέρος, κενό (space bar), αριθμητής, γραμμή κλάσματος (/), παρονομαστής.  Αν το κλάσμα απλοποιείτε, το excel, είτε το θέλετε είτε όχι, θα το απλοποιήσει αμέσως. Επίσης αν το κλάσμα που γράψατε είναι καταχρηστικό (ο αριθμητής του είναι μεγαλύτερος από τον παρονομαστή), αμέσως θα τον μετατρέψει σε μικτό αριθμό.  Γενικά όποιο κλάσμα και να γράψετε, το excel  θα εμφανίσει το ανάγωγο ισοδύναμό του και στην γραμμή των τύπων θα εμφανίσει τη δεκαδική μορφή του κλάσματος.
Παράδειγμα:  Εισάγετε το κλάσμα 12/60, το excel εμφανίζει την ανάγωγη ισοδύναμη μορφή 1/5. Αν έχετε λόγους να θέλετε τη  μορφή 12/60, τότε, αλλάξτε την μορφοποίηση του αριθμού. (Δεξί κλικ πάνω στο κελί > Μορφοποίηση κελιών > Αριθμός > Κατηγορία Προσαρμογή).  Αλλάξτε τη  μορφοποίηση από  # ??/??  σε   # ??/60 και το κλάσμα θα γίνει 12/60.  Όμοια, το κλάσμα 25/12 θα μετατραπεί στον μικτό 2  1/12, για να επαναφέρετε τον αριθμό στη αρχική μορφή του, αλλάξτε τη  μορφοποίηση από  # ??/??  σε  ??/??. Για το κλάσμα 26/12 που έχει ανάγωγη μορφή  2  1/6 αλλάξτε τη  μορφοποίηση από  # ??/??  σε  ??/12.
Την μέθοδο αυτή αλλαγής της μορφοποίησης, μπορείτε να χρησιμοποιήσετε για να μετατρέψετε κλάσματα σε ομώνυμα. Των κλασμάτων:  4/5,  5/9,  1/2,   7/11  οι παρονομαστές έχουν ΕΚΠ 990. Επιλέξτε τα κελιά που περιέχουν τα κλάσματα και ορίστε προσαρμοσμένη μορφοποίηση:  ???/990.  Τα κλάσματα θα γίνουν αντίστοιχα:   792/990,  550/990,  495/990, 630/990.
(Χρησιμοποιήστε σαν κοινό παρονομαστή  το ΕΚΠ ή ένα οποιοδήποτε άλλο κοινό πολλαπλάσιο των παρονομαστών. Η χρήση άλλου αριθμού για κοινό παρονομαστή θα σας οδηγήσει σε λάθη).
Το ΕΚΠ θα βρείτε με την συνάρτηση =LCM(n1,n2,n3,…).  Η LCM (Least Common Multiple) είναι νέα συνάρτηση στο excel  2007,  στις πιο παλιές εκδόσεις θα τη βρείτε αν εγκαταστήσετε το Πακέτο Εργαλείων Ανάλυσης.
Για να πάρετε τον παρονομαστή της ανάγωγης μορφής ενός κλάσματος που είναι γραμμένο στο κελί Α1, χρησιμοποιήστε τον τύπο:
 =--RIGHT(TEXT(A1;"?/000000000000000000");15)
Για όσους δεν έχουν πρόσβαση στο Πακέτο Εργαλείων Ανάλυσης, δίνω μια συνάρτηση χρήστη, την myLCM  ισοδύναμη της LCM.

Function myLCM(ParamArray numbers() As Variant) As Long
'Υπολογίζει τον ΕΚΠ δύο ή περισσοτέρων αριθμών.
Application.Volatile True
Dim lcm As Long
Dim nbr As Variant
Dim keli As Range
lcm = 1
For Each nbr In numbers
    If TypeName(nbr) = "Range" Then
        For Each keli In nbr
        lcm = ekp(keli, lcm)
        Next keli
    Else
    lcm = ekp(nbr, lcm)
    End If
Next nbr
myLCM = lcm
End Function
Private Function ekp(ByVal X As Double, ByVal Y As Double) As Double
'Υπολογίζει τον ΕΚΠ δύο αριθμών.
    X = Abs(X)
    Y = Abs(Y)
    ekp = X * Y / mkd(X, Y)
End Function
Private Function mkd(ByVal X As Double, ByVal Y As Double) As Double
'Υπολογίζει τον ΜΚΔ δύο αριθμών.
Dim omod As Double
    X = Abs(X)
    Y = Abs(Y)
    omod = X - Y * Int(X / Y)
    Do While omod > 0
        X = Y
        Y = omod
        omod = X - Y * Int(X / Y)
    Loop
    mkd = Y
End Function
This entry was posted in excel, Συναρτήσεις φύλλου, Συναρτήσεις Χρήστη, VBA and tagged , , , , , , , , . Bookmark the permalink.