Ανανέωση ιστοσελίδας
ms-office.gr > Forum > Microsoft Excel > Excel - Ερωτήσεις / Απαντήσεις > [Συναρτήσεις] Άθροισμα Βάση χρώματος άλλου κελιού

Excel - Ερωτήσεις / Απαντήσεις Ότι έχει σχέση με συναρτήσεις, μορφοποίηση, εκτυπώσεις γραφήματα κτλ.

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

 

Εργαλεία Θεμάτων Τρόποι εμφάνισης
  #1  
Παλιά 30-10-21, 18:47
Όνομα: Μηνας
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 17-06-2015
Μηνύματα: 15
Προεπιλογή Άθροισμα Βάση χρώματος άλλου κελιού

Kαλησπέρα έχω αυτό το test file που βάση ημερομηνίας μετράει πόσα κελιά απ' το κάθε χρώμα υπάρχουν "δίπλα" σε κάθε ημερομηνία.
Με τον παρακάτω κώδικα για κάθε ένα απ τα τρία χρώματα

Κώδικας:
Function DailyWin(MyColors As range, MyDates As range, Str As range) As Double
    Dim R  As Long: R = MyColors(1, 1).Row - MyDates(1, 1).Row
    Dim C  As Long: C = MyColors(1, 1).Column
    Dim Dt As range
    
    Application.Volatile
    With MyColors.Parent
        For Each Dt In MyDates
            If InStr(Dt.Value, Str.Value) Then
                If .Cells(Dt.Row + R, C).Interior.Color = RGB(198, 239, 206) Then
                    DailyWin = DailyWin + 1
                Else
                    DailyWin = DailyWin
                End If
            End If
        Next
    End With
End Function


Function DailyLost(MyColors As range, MyDates As range, Str As range) As Double
    Dim R  As Long: R = MyColors(1, 1).Row - MyDates(1, 1).Row
    Dim C  As Long: C = MyColors(1, 1).Column
    Dim Dt As range
    
    Application.Volatile
    With MyColors.Parent
        For Each Dt In MyDates
            If InStr(Dt.Value, Str.Value) Then
                If .Cells(Dt.Row + R, C).Interior.Color = RGB(255, 199, 206) Then
                    DailyLost = DailyLost + 1
                Else
                    DailyLost = DailyLost
                End If
            End If
        Next
    End With
End Function




Function DailyVoid(MyColors As range, MyDates As range, Str As range) As Double
    Dim R  As Long: R = MyColors(1, 1).Row - MyDates(1, 1).Row
    Dim C  As Long: C = MyColors(1, 1).Column
    Dim Dt As range
    
    Application.Volatile
    With MyColors.Parent
        For Each Dt In MyDates
            If InStr(Dt.Value, Str.Value) Then
                If .Cells(Dt.Row + R, C).Interior.Color = RGB(255, 235, 156) Then
                    DailyVoid = DailyVoid + 1
                Else
                    DailyVoid = DailyVoid
                End If
            End If
        Next
    End With
Θα ηθέλα να κάνω το ίδιο, αλλά αντί για ημερομηνιές να διαβάζει παλί χρώμα.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm test.xlsm (16,7 KB, 2 εμφανίσεις)
Απάντηση με παράθεση
  #2  
Παλιά 30-10-21, 18:51
Όνομα: Μηνας
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 17-06-2015
Μηνύματα: 15
Προεπιλογή

Στο test2 φαίνεται πιο καθαρά αυτό που ζητάω. Ευχαριστώ πολύ για τον χρόνο σας!
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm test2.xlsm (16,6 KB, 6 εμφανίσεις)
Απάντηση με παράθεση
  #3  
Παλιά 31-10-21, 09:04
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλημέρα

Δες το συνημμένο.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm CountColors.xlsm (19,5 KB, 8 εμφανίσεις)
Απάντηση με παράθεση
  #4  
Παλιά 31-10-21, 18:31
Όνομα: Μηνας
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 17-06-2015
Μηνύματα: 15
Προεπιλογή

Παράθεση:
Αρχική Δημοσίευση από kapetang Εμφάνιση μηνυμάτων
Καλημέρα

Δες το συνημμένο.
Υπέρ υπέρ ευχαριστώ! Και μια τελευταία ερώτηση, αν θέλω να κοιτάει 2 χρώματα;
Σαν το παρακάτω excel.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm Count2Colors.xlsm (20,9 KB, 7 εμφανίσεις)
Απάντηση με παράθεση
  #5  
Παλιά 31-10-21, 23:06
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Μηνά, δες το συνημμένο.

Εφαρμόζω τη συνάρτηση 2 φορές (μία με τη στήλη Α και μία με τη Β) και αθροίζω τα αποτελέσματα.

Κάνε έλεγχο. Εγώ δεν τα πάω καλά με τα χρώματα.
Συνημμένα Αρχεία
Τύπος Αρχείου: xlsm Count2Colors2.xlsm (20,5 KB, 12 εμφανίσεις)
Απάντηση με παράθεση
  #6  
Παλιά 01-11-21, 07:57
Όνομα: Μηνας
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 17-06-2015
Μηνύματα: 15
Προεπιλογή

Παράθεση:
Αρχική Δημοσίευση από kapetang Εμφάνιση μηνυμάτων
Μηνά, δες το συνημμένο.

Εφαρμόζω τη συνάρτηση 2 φορές (μία με τη στήλη Α και μία με τη Β) και αθροίζω τα αποτελέσματα.

Κάνε έλεγχο. Εγώ δεν τα πάω καλά με τα χρώματα.
Ευχαριστώ και πάλι για την απάντηση. Μάλλον όμως δεν εξήγησα καλά εγώ το τι θέλω να κάνω. Θέλω να ισχύουν και οι 2 ταυτόχρονα για "κοιτάξει" μετά το χρώμα της Ε και να αρχίσει να μετράει. Στο 1ο παράδειγμα δηλαδή να είναι πράσινο και το κελί της στήλης Α και της Β, στο 2ο να είναι πράσινο το Α και κόκκινο το Β και στο 3ο μπλε το Α και κόκκινο το Β.
Απάντηση με παράθεση
  #7  
Παλιά 01-11-21, 17:50
Όνομα: Γιώργος
Έκδοση λογισμικού Office: Ms-Office 2010
Γλώσσα λογισμικού Office: Ελληνική, Αγγλική
 
Εγγραφή: 18-06-2010
Μηνύματα: 3.674
Προεπιλογή

Καλησπέρα

Μηνά όταν χρησιμοποιούμε χρώματα και βασιζόμαστε σ’ αυτά για την εξαγωγή συγκεντρωτικών στοιχείων, έχουμε περιορισμένες δυνατότητες και συχνά οδηγούμαστε σε λύσεις με κώδικα.

Φυσικά υπάρχει και η περίπτωση να μη γίνονται αντιληπτά και σε κάποιους με αχρωματοψίες

Αν κατάλαβα καλά, έχεις κάποιες στήλες πχ A, B, C, D, κλπ με χρώματα και θέλεις το πλήθος των γραμμών που στη στήλη Α έχουν χρώμα Χα, στη στήλη Β Χβ, κλπ.

Θα σου πρότεινα το εξής:

Να δημιουργήσεις ένα πίνακα με όσες στήλες θέλεις και αντί να χρωματίζεις τα κελιά να καταχωρείς τα ονόματα των χρωμάτων (ΚΟΚΚΙΝΟ, ΠΡΑΣΙΝΟ, κλπ).

Για την ευκολία και την ακρίβεια της καταχώρησης οι τιμές να επιλέγονται από λίστα.

Αν θέλουμε χρώματα, μπορούμε να εφαρμόσουμε μορφοποίηση υπό όρους, ώστε αυτόματα τα κελιά με τη λέξη ΚΟΚΚΙΝΟ να χρωματίζονται κόκκινα, αυτά με τη λέξη ΚΙΤΡΙΝΟ κίτρινα, κλπ.

Αυτό μας δίνει μεγάλες δυνατότητες ταξινόμησης, εφαρμογής φίλτρων, εφαρμογής συγκεντρωτικών συναρτήσεων πχ CountIFs(), ακόμα και δημιουργίας συγκεντρωτικών πινάκων.

Έτσι αυτό που ζητάς, για παράδειγμα, θα μπορούσες να το πετύχεις χωρίς κώδικα με τη συνάρτηση CountIFs().
Απάντηση με παράθεση
  #8  
Παλιά 02-11-21, 05:43
Όνομα: Μηνας
Έκδοση λογισμικού Office: Ms-Office 2013
Γλώσσα λογισμικού Office: Αγγλική
 
Εγγραφή: 17-06-2015
Μηνύματα: 15
Προεπιλογή

Παράθεση:
Αρχική Δημοσίευση από kapetang Εμφάνιση μηνυμάτων
Καλησπέρα

Μηνά όταν χρησιμοποιούμε χρώματα και βασιζόμαστε σ’ αυτά για την εξαγωγή συγκεντρωτικών στοιχείων, έχουμε περιορισμένες δυνατότητες και συχνά οδηγούμαστε σε λύσεις με κώδικα.

Φυσικά υπάρχει και η περίπτωση να μη γίνονται αντιληπτά και σε κάποιους με αχρωματοψίες

Αν κατάλαβα καλά, έχεις κάποιες στήλες πχ A, B, C, D, κλπ με χρώματα και θέλεις το πλήθος των γραμμών που στη στήλη Α έχουν χρώμα Χα, στη στήλη Β Χβ, κλπ.

Θα σου πρότεινα το εξής:

Να δημιουργήσεις ένα πίνακα με όσες στήλες θέλεις και αντί να χρωματίζεις τα κελιά να καταχωρείς τα ονόματα των χρωμάτων (ΚΟΚΚΙΝΟ, ΠΡΑΣΙΝΟ, κλπ).

Για την ευκολία και την ακρίβεια της καταχώρησης οι τιμές να επιλέγονται από λίστα.

Αν θέλουμε χρώματα, μπορούμε να εφαρμόσουμε μορφοποίηση υπό όρους, ώστε αυτόματα τα κελιά με τη λέξη ΚΟΚΚΙΝΟ να χρωματίζονται κόκκινα, αυτά με τη λέξη ΚΙΤΡΙΝΟ κίτρινα, κλπ.

Αυτό μας δίνει μεγάλες δυνατότητες ταξινόμησης, εφαρμογής φίλτρων, εφαρμογής συγκεντρωτικών συναρτήσεων πχ CountIFs(), ακόμα και δημιουργίας συγκεντρωτικών πινάκων.

Έτσι αυτό που ζητάς, για παράδειγμα, θα μπορούσες να το πετύχεις χωρίς κώδικα με τη συνάρτηση CountIFs().
Ok, θα το κοιτάξω, ευχαριστώ πολύ!
Απάντηση με παράθεση
Απάντηση στο θέμα


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

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


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

Θέμα Δημιουργός Forum Απαντήσεις Τελευταίο Μήνυμα
[VBA] Αλλαγή χρώματος κελιού ανάλογα με την τιμή του κελιού bilakos26 Excel - Ερωτήσεις / Απαντήσεις 5 10-11-17 17:07
[Μορφοποίηση] Κλείδωμα κελιού με βάση το περιεχόμενο ενός άλλου. dimharos Excel - Ερωτήσεις / Απαντήσεις 1 28-05-16 06:06
[VBA] Αλλαγή της τιμής ενός κελιού βάσει του χρώματος sakis297 Excel - Ερωτήσεις / Απαντήσεις 8 18-09-15 18:19
[VBA] Αλλαγή χρώματος κελιού στην περίπτωση που devcon Excel - Ερωτήσεις / Απαντήσεις 5 30-03-11 15:20
[VBA] Αλλαγή χρώματος κελιού ytsiak Excel - Ερωτήσεις / Απαντήσεις 5 18-09-10 00:44


Η ώρα είναι 04:33.