Cum se aduna numere in functie de culoare?

ioan72
Mesaje: 5
Membru din: Joi Mar 11, 2010 8:29 am

Cum se aduna numere in functie de culoare?

Mesaj de ioan72 » Joi Mar 11, 2010 9:02 am

Va salut cu respect pe toti membri acestui forum.Sunt nou pe acest forum si doresc sa imi imbunatatesc cunostintele in Excel la nivel de incepator (amator) pentru a-mi usura munca la birou.
Va rog sa imi spuneti cum se pot aduna caracterele de pe un rand in functie de culoarea lor.Adica am un rand care are anumite cifre care sunt de doua culori(rosu si negru) iar la capat vreau sa fac sume(formula) care sa stie sa faca selectia in functie de culoare rosu sau negru.Mentionez ca cifrele de pe rand sunt de la 1-10 si poate fi acceasi cifra la ambele culori.
Va multumesc anticipat.Cele bune tuturor.
Ultima oară modificat Joi Mar 11, 2010 9:32 am de către smcsa, modificat 1 dată în total.
Motiv: Modificat typo in titlu din cuolare in culoare

Dr.Windows
Moderator
Moderator
Mesaje: 4570
Membru din: Vin Iul 31, 2009 7:32 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de Dr.Windows » Joi Mar 11, 2010 9:12 am

Vezi daca te ajuta functia SumColor de aici: http://www.ozgrid.com/VBA/Sum.htm

Si ca sa explic putin functia de acolo - iti va aduna cifrele (nu caractarele... ;) ) luand ca referinta culoarea celulei transmisa ca prim parametru, cel dea-l doilea parametru fiind zona de adunat.

Daca luam exemplul dat si in pagina cu functia de acolo au vazut ca apeleaza sub forma =SUMCOLOR(B2, B1:B10) unde B2 este o celula colorata cu galben.

In situatia ta fiind vorba de 2 seturi de culori va trebui sa ai 2 functii SUMCOLOR pentru a referi cate o celula din fiecare set de culori chiar daca range-ul de adunat o sa fie acelasi.

Luand tot exemplul de acolo, un al doilea SUMCOLOR ar fi =SUMCOLOR(B3,B1:B10) pentru a aduna celulele pe culoarea alba...

ioan72
Mesaje: 5
Membru din: Joi Mar 11, 2010 8:29 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de ioan72 » Joi Mar 11, 2010 10:19 am

Mersi de raspuns dar la mine cifrele sunt de culori diferite nu celulele.Pun un exemplu.Mersi.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

Dr.Windows
Moderator
Moderator
Mesaje: 4570
Membru din: Vin Iul 31, 2009 7:32 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de Dr.Windows » Joi Mar 11, 2010 10:28 am

Asta se rezolva modificand in functia de acolo Interior.ColorIndex cu Font.ColorIndex, mai exact functia devine:

Cod: Selectaţi tot

Function SumColor(rColor As Range, rSumRange As Range)
    Dim rCell As Range
    Dim iCol As Integer
    Dim vResult
    
    iCol = rColor.Font.ColorIndex
    For Each rCell In rSumRange
        If rCell.Font.ColorIndex = iCol Then
            vResult = WorksheetFunction.Sum(rCell) + vResult
        End If
    Next rCell
    
    SumColor = vResult

End Function

Ai si exemplul atasat unde "referinta de culoare" se face la cate o celula din randul 8 (antetul tabelului)...
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

ioan72
Mesaje: 5
Membru din: Joi Mar 11, 2010 8:29 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de ioan72 » Joi Mar 11, 2010 10:40 am

Superrrr.M-ai descurcat...si ce simplu era.Mersi mult de ajutor.Toate cele bune iti doresc.

Dr.Windows
Moderator
Moderator
Mesaje: 4570
Membru din: Vin Iul 31, 2009 7:32 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de Dr.Windows » Joi Mar 11, 2010 10:46 am

Cu placere... dar ai MARE ATENTIE la celula pe care o trimiti ca parametru pentru detectarea culorii, pentru ca in functie de ea iti va calcula suma - de aia este bine sa iei ca "referinta" o celula la care culoarea este putin probabil sa se modifice (de ex. din antetul tabelului, und eprobabil cu rosu ai zilele libere sau ceva "de genul"...)

ioan72
Mesaje: 5
Membru din: Joi Mar 11, 2010 8:29 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de ioan72 » Joi Mar 11, 2010 11:33 am

Sa sti ca nu imi merge.Cand introduc cifre noi nu mai face nimic rezultatul e name?

Dr.Windows
Moderator
Moderator
Mesaje: 4570
Membru din: Vin Iul 31, 2009 7:32 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de Dr.Windows » Joi Mar 11, 2010 12:59 pm

Nu reusesc sa reproduc problema... cel putin pe "mostra" atasata si mai sus... dar daca poti atasa fisierul tau aici cred ca ar fi mai usor (dar cred ca ai gresit numele functiei).

L.E.: Cred ca mai degraba eroarea apare din cauza ca NU activezi macrourile - in aceasta situatie intr-adevar iti apare eroarea #NAME in momentul in care modifici continutul unui "range" care face parte din zona de insumare...

ioan72
Mesaje: 5
Membru din: Joi Mar 11, 2010 8:29 am

Re: Cum se aduna numere in functie de culoare?

Mesaj de ioan72 » Joi Mar 11, 2010 10:11 pm

Nu stiu sa activez macrourile.De unde se activeaza?

IPP
Moderator
Moderator
Mesaje: 4196
Membru din: Mie Iul 29, 2009 7:26 am
Localitate: Cluj-Napoca

Re: Cum se aduna numere in functie de culoare?

Mesaj de IPP » Joi Mar 11, 2010 11:21 pm

Buna seara

Daca Security Level-ul nu este pe "Low", atunci cand deschideti un fisier care contine macrocomenzi va apare automat o fereastra de dialog in care veti avea posibilitatea sa impiedicati sau nu actiunea macrocomenzilor (vedeti si poza atasata).
Pentru activare macrourilor alegeti "Enable macros".

IP

Nota. Activarea macrocomenzilor in fisiere provenite din surse nesigure poate fi riscanta. Daca veti cauta pe acest forum veti mai gasi si alte discutii care au tangenta cu aceasta problema.
Nu aveţi permisiunea de a vizualiza fişierele ataşate acestui mesaj.

Închis

Înapoi la “Visual Basic for Application (VBA) cu Excel - Intrebari tehnice”