ms-office.gr > Forum > Microsoft Office > Visual Basic for Applications (VBA) > [Excel - VBA] Ανάλυση αθροίσματος και αποσύνθεση όρων

Visual Basic for Applications (VBA) Ερωτήσεις / Απαντήσεις σε σχέση με τη χρήση της VBA.

Απάντηση στο θέμα

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 01-02-21, 20:23
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή Ανάλυση αθροίσματος και αποσύνθεση όρων

Καλησπέρα στο Forum

Εστω ένα κελί περιέχει την εξης παραάσταση [άθροισμα]:

=3+12+9+87+46

Ενδιαφέρομαι για functions -2 ξεχωριστές- που να κάνουν τις κάτωθι λειτουργίες:

α. να μετρά τους όρους του αθροίσματος [δηλαδή για το ανωτέρω παράδειγμα, 5. Αν το κελί περιέχει ένα μόνο νούμερο, τότε αποτέλεσμα =1]

β. να αναλύει το αθροισμα στους όρους του, κατακόρυφα [δηλαδή στα 5 παρακάτω κελιά να συμπληρωθεί και από ενας όρος του αθροίσματος]

Ευχαριστώ για την προσοχή σας.

Υ.Γ. Πως γίνεται να μου έρχεταο ειδοποίηση στο email, όταν κάπιοος απαντά στο θέμα ?
Στον τύπο ειδοποίησης επιλέγω "Αμεση μέσω email", αλλά δεν λαμβάνω τίποτα, παρόλο που το θέμα έχει απαντηθεί
Απάντηση με παράθεση
  #2  
Παλιά 02-02-21, 18:02
Το avatar του χρήστη ChrisGT7
Super Moderator
Όνομα: Χρήστος Ζώρζος
Έκδοση λογισμικού Office: Ms-Office 2016
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 20-09-2013
Περιοχή: Κοντά σε ηφαίστειο...
Μηνύματα: 631
Προεπιλογή

Καλησπέρα Μενέλαε,

Δοκίμασε τα παρακάτω βήματα αν σε βολεύουν:

1. Κάνε δεξί κλικ πάνω στο όνομα του φύλλου και επέλεξε View Code
2. Στον επεξεργαστή της VBA επέλεξε Insert > Module.
3. Εκεί κάνε επικόλληση τον παρακάτω κώδικα:

Κώδικας:
Option Explicit

Function SPLITF(Rng As Range) As Variant()
    SPLITF = Application.Transpose(Split(Replace(Rng.Formula, "=", ""), "+"))
End Function

Function NUMT(Rng As Range) As Integer
    NUMT = UBound(Split(Replace(Rng.Formula, "=", ""), "+")) + 1
End Function
Έτσι δημιουργούνται δύο συναρτήσεις, SPLIF() και NUMT(), όπου δέχονται ως όρισμα ένα κελί.

Για να λειτουργήσει σωστά η SPLITF, κάνε τα εξής:
1. Μάρκαρε μερικά κελιά σε μια στήλη.
2. Πάτα F2, ώστε να μπεις στο πρώτο επιλεγμένο κελί.
3. Γράψε =SPLITF(A1), όπου το Α1 είναι η παράσταση με τους αριθμούς αθροίσματος.
4. Πάτα Ctrl+Shift+Enter.
5. Λογικά τα υπόλοιπα μαρκαρισμένα κελιά θα συμπληρωθούν με τους όρους του αθροίσματος.
6. Αν τα μαρκαρισμένα κελιά είναι περισσότερα από τους όρους του αθροίσματος, θα περιέχουν σφάλμα #N/A.
7. Με μια αντιγραφή/επικόλληση τιμών πιστεύω μπορείς να κρατήσεις τα επιθυμητά αποτελέσματα.

Για τη NUMT() τα πράγματα είναι πιο εύκολα: απλά γράψε κάπου =NUMT(A1) για να δεις το πλήθος των όρων του αθροίσματος.

Όσον αφορά τις ειδοποιήσεις στο e-mail, έκανα μια δοκιμή στο παρόν θέμα με την Άμεση αλλά ακόμα δεν έλαβα τίποτα, παρόλο που απάντησα. Αναμένω τώρα τη δικιά σου απάντηση να δω αν λάβω κάτι.
__________________
Your Curiosity Will Be The Death Of You!!!
Απάντηση με παράθεση
  #3  
Παλιά 03-02-21, 09:07
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή

καλημέρα Χρήστο,

Σ'ευχαριστώ πολύ, για άλλη μία φορά.
Θα δοκιμάσω με πρώτη ευκαιρία, μάλλον το ΣΚ, και θα σου πώ αποτελέσματα.

Οσο για την απάντηση σου, και πάλι δεν έλαβα καμιά ειδοποίηση στο email. Το αν έχει απαντηθεί κάποιο θέμα το βλέπω μόνο αν συνδεθώ στο Forum. Εν πάσει περιπτώσει, δεν είναι σοβαρό το θέμα. Απλά μου κάνει εντύπωση, γιατί νομίζω οτιι παλαιότερα ερχόντουσαν ειδοποιήσεις στο email
Απάντηση με παράθεση
  #4  
Παλιά 05-02-21, 13:46
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή

Γειά σου Χρήστο

Ελεγξα τις συναρτήσεις και δουλεύουν άψογα και οι δύο.
Ευχαριστώ και να είσαι καλά.
Απάντηση με παράθεση
  #5  
Παλιά 04-04-22, 16:21
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή Αναγνώριση Array Name από το περιεχόμενο κελιού

Καλημέρα σε όλους

Θα ήθελα τη βοήθειά σας σχετικά με την χρήση των Named Arrays στο Excel.
Στο συνημμένο file υπάρχει ένας πίνακας με τις τιμές διαφόρων προιόντων [λιπαντικών] σε ορισμένα λιμάνια ανά τον κόσμο.
Στη γραμμή 2 συμπληρώνω τις ποσότητες από το κάθε προιόν που προτίθεμαι να παραγγείλω.
Εχω ονοματίσει τις γραμμές με το όνομα του λιμάνιου [όπως αναγράφεται στην 1η στήλη], και ομοίως τη γραμμή 2 [αυτήν με τις ποσότητες] την έχω ονομάσει Order Q'ty.
Ετσι υπολογίζω το συνολικό κόστος με τη χρήση array formula, Order Q'ty * Port. [π.χ. βλ. κελί Ε4 για την Σιγκαπούρη]
Αυτό όμως που θά ήθελα [και δεν έχω καταφέρει να προγματοποιήσω] είναι το εξής:
Αντί κάθε φορά να συμπληρώνω στη formula το όνομα του λιμανιού, να αντιγράφω [με copy-paste] το λιμάνι από τον πίνακα στο κελί αριστερά του κόστους και η array formula να κάνει τον υπολογισμό χρησιμοποιώντας το Array Name που υποδηλώνει το λιμάνι μέσα στο -αριστερό- κελί.
Προσπάθησα είτε με απευθείας αναφορά στο κελί [D6], είτε με χρήση της συνάρτησης INDIRECT, αλλά χωρίς επιτυχία [βλ. γραμμή 6, αποτελέσματα στα κελιά Ε6 & F6].
Αν μπορεί κάποιος να βοηθήσει θα ήμουν υπόχρεος.

Σημείωση: Επιχειρώ να ανοίξω "Νέο Θέμα", αλλά δεν μου επιτρέπει ! Επειδή δεν γνωρίζω γιατί, ούτε μπορώ να βρώ πως να επικοινωνήσω με τον διαχειριστή του Forum, μπορεί κάποιος να μεσολαβήσει στον διαχειριστή, ή να με καθοδηγήσει γαι το τι πρέπει να κάνω ?
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsx Lubs PRICE LIST Oct 2021.xlsx (17,7 KB, 2 εμφανίσεις)
Απάντηση με παράθεση
  #6  
Παλιά 04-04-22, 20:38
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.732
Προεπιλογή

Καλησπέρα

Δες το συνημμένο.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsx Lubs PRICE LIST Oct 2021b.xlsx (20,5 KB, 11 εμφανίσεις)

Τελευταία επεξεργασία από το χρήστη kapetang : 04-04-22 στις 22:37.
Απάντηση με παράθεση
  #7  
Παλιά 06-04-22, 15:48
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή Ευχαριστώ για τη λύση

Γιώργο

Ευχαριστώ πολύ για την άμεση απάντηση/λύση -αλλά και την υπόδειξη.
Για να απλοποιήσω τη φόρμουλα, θα αντικαταστήσω εξαρχής τις παύλες "-" από τα ονόματα.
Απάντηση με παράθεση
  #8  
Παλιά 06-04-22, 19:22
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.732
Προεπιλογή

Να είσαι καλά Μενέλαε και καλή συνέχεια
Απάντηση με παράθεση
  #9  
Παλιά 25-04-22, 18:57
Όνομα: Μενέλαος
Έκδοση λογισμικού Office: Ms-Office 2013, Ms-Office 365
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 25-06-2019
Περιοχή: Αθήνα
Μηνύματα: 19
Προεπιλογή

Καλησπέρα σε όλους

Παρακαλώ θα ήθελα την βοήθειά σας στη χρήση των Advanced Filter στο Excel.
Συγκεκριμένα, η ερώτηση μου αφορά στο φιλτράρισμα των κελιών μίας στήλης με κενό περιεχόμενο [blanks].
Πως θα πρέπει να συμπληρώσω στη γραμμή των κριτηρίων το «κενό» ?
Δοκίμασα την εγγραφή ””, αλλά δεν δείχνει να δουλεύει [κρύβει όλες τις γραμμές, ενώ θα έπρεπε να δείχνει τις γραμμές που στη συγκεκριμένη στήλη τα κελιά είναι κενά, αλλά υπάρχουν τιμές σε -κάποια- άλλα κελιά των υπόλοιπων στηλών].

Υ.Γ. Θα μπορούσε παρακαλώ να με βοηθήσει κάποιος να επικοινωνήσω με το administration του forum ?
Δεν μου επιτρέπει να ανοίξω "Νέο Θέμα" και προσφάτως δεν μου εμφανίζει ούτε τα θέματα που παρακολουθώ.
Εχω αποστείλει δύο φορές μήνυμα στο admin@ms-office.gr -το πρώτο εδώ και 3 εβδομάδεςς, αλλά δεν λαμβάνω απάντηση.
Απάντηση με παράθεση
  #10  
Παλιά 27-04-22, 14:03
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.732
Προεπιλογή

Καλησπέρα

Δες ένα παράδειγμα στο συνημμένο.

Αφού έκανες σωστά τη διαδικασία και δε μπορείς να δημιουργήσεις νέο θέμα, θα πρέπει να δοκιμάσεις τη δημιουργία νέου λογαριασμού.

Νομίζω ότι θα πρέπει να περάσουν 24 ώρες από την εγγραφή για να μπορείς να ανεβάζεις αρχεία και να ανοίγεις νέο θέμα.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsx AvancedFilter.xlsx (25,0 KB, 8 εμφανίσεις)
Απάντηση με παράθεση
Απάντηση στο θέμα

Εργαλεία Θεμάτων
Τρόποι εμφάνισης

Δικαιώματα - Επιλογές
Δε μπορείτε να δημοσιεύσετε νέα μηνύματα
Δε μπορείτε να δημοσιεύσετε απαντήσεις
Δεν μπορείτε να επισυνάψετε αρχεία
Δεν μπορείτε να επεξεργαστείτε τα μηνύματα σας

Ο κώδικας ΒΒ είναι σε λειτουργία
Τα Smilies είναι σε λειτουργία
Ο κώδικας [IMG] είναι σε λειτουργία
Ο κώδικας HTML είναι εκτός λειτουργίας
Trackbacks are εκτός λειτουργίας
Pingbacks are εκτός λειτουργίας
Refbacks are εκτός λειτουργίας


Παρόμοια Θέματα

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[Excel07] Ανάλυση σε excel LikeAvocado Excel - Ερωτήσεις / Απαντήσεις 0 19-10-20 09:41
[ Πρόσθετα ] excel2010-αναλυση δεδομένων tassos17 Excel - Ερωτήσεις / Απαντήσεις 2 19-01-16 19:28
[ Φόρμες ] Ανάλυση φόρμας choulio19 Access - Ερωτήσεις / Απαντήσεις 12 13-06-12 13:47
Πρώτη οθόνη καλωσορίσματος και αποδοχή όρων εφαρμογής comsup Access - Ερωτήσεις / Απαντήσεις 6 24-11-11 18:39
MsAccess και διαφορετική ανάλυση οθόνης dionisis Access - Ερωτήσεις / Απαντήσεις 2 31-03-11 07:29


Η ώρα είναι 12:34.