Εμφάνιση ενός μόνο μηνύματος
  #7  
Παλιά 07-11-24, 20:11
Το avatar του χρήστη ChrisGT7
ChrisGT7 Ο χρήστης ChrisGT7 δεν είναι συνδεδεμένος
Διαχειριστής
Όνομα: Χρήστος Ζώρζος
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 20-09-2013
Περιοχή: Κοντά σε ηφαίστειο...
Μηνύματα: 949
Προεπιλογή

Δοκίμασε αυτόν τον τροποποιημένο κώδικα για την Eval():
Κώδικας:
Public Function Eval(Rng As Range) As Currency
    Dim MyCell As Range, TtlSum As Currency
    For Each MyCell In Rng
        If Len(MyCell.Value) Then _
            If IsNumeric(Evaluate("SUBSTITUTE(" & MyCell.Address & ",""€"","""")") + 0) Then _
                TtlSum = TtlSum + Evaluate("SUBSTITUTE(" & MyCell.Address & ",""€"","""")")
    Next
    Eval = TtlSum
End Function
Επίσης, στο D1 δοκίμασε αυτόν τον τύπο:
Κώδικας:
=" Σύνολο: "&TEXT(Eval(E2:E100);"#.###0,00 €")
Υποθέτω πως τα δεδομένα στο Φύλλο2 γίνονται επικόλληση από κάποια εξωτική πηγή και γι' αυτό δεν θεωρούνται ως αριθμοί.

Θεωρώ όμως, στη στήλη Ε πως με μια απλή αντικατάσταση του "€" με τίποτα, οι τιμές θα γίνουν αριθμοί και με μια απλή SUM() έχεις το ίδιο αποτέλεσμα χωρίς να μπλέκεις με κώδικα.
__________________
Your Curiosity Will Be The Death Of You!
Απάντηση με παράθεση