
01-09-13, 19:35
|
| Όνομα: ΜΠΑΜΠΗΣ Έκδοση λογισμικού Office: Ms-Office 2003, Ms-Office 2007 Γλώσσα λογισμικού Office: Ελληνική, Αγγλική | | Εγγραφή: 13-03-2010
Μηνύματα: 9
| |
Και το αρχείο μου σε excel που περιέχει τον κώδικα Παράθεση:
Αρχική Δημοσίευση από it0466 Καλησπέρα σε όλους, Θέλω να μετράω κελιά με το ίδιο background color.
Σε ένα αρχείο excel θέλω μόνος μου να επισημαίνω με κάποιο background color μια περιοχή κελιών και να μπορεί η συνάρτηση που θα φτιάξω σε VBA να πόσα σε πλήθος κελιά έχουν το ίδιο background color. Ψάχνωντας στο google βρήκα αυτό εδώ τον κώδικα: Κώδικας: Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)
Dim rCell As Range
Dim lCol As Long
Dim vResult
lCol = rColor.Interior.ColorIndex
If SUM = True Then
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = WorksheetFunction.SUM(rCell, vResult)
End If
Next rCell
Else
For Each rCell In rRange
If rCell.Interior.ColorIndex = lCol Then
vResult = 1 + vResult
End If
Next rCell
End If
ColorFunction = vResult
End Function
. Δημιουργώ module μέσα στο αρχείο μου και επικολλώ τον παραπάνω κώδικα. Έπειτα χειροκίνητα πρασινίζω μια περιοχή κελιών που θέλω να μετρήσω το πλήθος τους και σε διπλανό κελί βάζω την παραπάνω formula,=colorfunction(A,B:C,FALSE), όπου Α το κελί που έχει το background color που με ενδιαφέρει, όπου Β:C η περιοχή κελιών που θέλω να εξετάσω και όπου FALSE δηλώνω ότι θέλω μόνο να μετρήσω πλήθος κελιών με ίδιο background color και όχι τα περιεχόμενα που μπορεί να έχουν αυτά τα κελιά, αλλά δεν παίρνω το επιθυμητό αποτέλεσμα. Αυτό που παίρνω φαίνεται στις παρακάτω συνημμένες εικόνες. Επίσης θέλω να μπορώ να χρησιμοποιώ την συνάρτηση που ορίστηκε στο module σε όλο το workbook γιατί θα δημιουργώ πολλά φύλλα εργασίας μέσα σε αυτό το βιβλίο εργασίας. Γίνεται να συμβαίνει αυτό όπως ορίστηκε η συνάρτηση ColorFunction μέσα στο module; Σε μια αναζήτηση που έκανα μέσα στο forum βρήκα το παρακάτω θέμα Άθροισμα κελιών με χρώμα,το διάβασα αλλά δεν με βοήθησε στην επίλυση του προβλήματος που έχω. Σας ευχαριστώ. |
Σας επισυνάπτω και το αρχείο excel που προσπαθώ αν το πετύχω.
|